I wasn't able to find much information about exactly why using shorter names on packages or using the unnamed package (default package) actually makes the jar size smaller.
I've read obfuscators strip unused classes and make the names of the remaining ones smaller and this reduces the jar size. And I've actually tried it my self and by using the unnamed package in one of my applications I got a 1.2% reduction in file size. But I couldn't find any trustworthy information on why this happens. I can only assume it is because of the overhead a long name introduces. Still I would appreciate any tips on how to justify this.
Initially I got the idea from this document: http://carfield.com.hk/document/java/articles/Efficient_MIDP_Programming.pdf
It really doesn't explain why though.
Jar files are Zip files with another extension and a special (and optional) folder named META-INF. For each file or folder there is a header associated. As headers take some space of the jar you better keep less files in it, but if you already took it to the bare minimum then keep all those files in the root directory.
For MIDlet distribution the jar file must have the META-INF folder so, for best space usage, your jar files should have only this folder. Your MIDlet and all other classes should be on default package. The same with resource files, keep all of them at file root.
As seen in http://smallandadaptive.blogspot.com.br/2008/09/keep-it-flat.html