How are you taking your measurements? Because of the way that OmniFocus stores transactions, the Finder tends to greatly overstate the file size of a database with many transactions which have not been compacted. If you look at the actual byte count shown by File->Get Info, often the number will be much smaller than that represented by the size in MB or KB.
You get a new file in the database package file for each change you make, and each file will be counted by the Finder as occupying 4K (or whatever the minimum block size on the disk is), even though it will often only be a fraction of that, typically 400-800 bytes or so.
The other piece of the puzzle is the data that is reported by the settings page, sync section on the iPhone or the settings page on the iPad. That will tell you how many zip files there are waiting to be compacted. Remember, the compaction only happens up to the point where all of the devices have synced, so if you make a lot of changes on iPhone and Mac (generating lots of zip files) and only occasionally make changes and sync from the iPad, that will keep the normal background compaction from taking place as often as it might. You shouldn't need to do the unregistration of sync clients; just use them and let them sync. If you have a client you don't plan to use, sync it, then unregister it, which will a) make sure you don't lose any changes made on it and not yet synced, and b) keep it from interfering with compaction.