I am running the following command to get my encrypted obb file for apk expansion.
jobb -d /home/manoj/Desktop/Test -o main.1.com.example.helloworld.obb -k \
In addition to what Ix222 said about FAT16 limiting the number of files in the root directory, there's also an issue in the jobb tool itself, and the FAT library it uses.
In the FAT library it is determining the maximum filesystem size for FAT12 to be 4 MB, FAT16 at 512 MB and using FAT32 for anything beyond that. In reality FAT12 allows up to 16 MB (32 MB in some implementations) and FAT16 allows up to 2 GB. This is the reason that if your OBB size using the current tool is limited to the range 4 MB <= OBB size < 512 MB.
The jobb tool is also wrongly relying on the FAT library to determine the filesystem, but it is only compatible with FAT16.
A quick fix is to build your own version of the jobb tool (I recommend backing up the existing JAR and replacing it with your own, the Windows Batch file should still be used to run it) with a modified version of the libfat32 library built in. Simply modifying the method that determines the filesystem to return FAT16 for anything up to 2 GB and FAT32 otherwise is sufficient to build valid OBB files up to 2 GB (which is the limit for OBB files anyway).
SuperFloppyFormatter returning FAT32 for anything over 512 MB?
https://code.google.com/p/android/issues/detail?id=60294