rebooting the phone is not going to use upwards of 30% of your battery, nor would flashing a ROM. If that were the case, your phone would heat up to ridiculous levels and your battery would probably explode with that kind of output
The problem is most likely coming from miscalculation of the true battery level (which has been well documented in other threads on xda), which is rechecked during the boot process, and corrected. I've noticed that if my phone has gone long periods of time without a reboot, that this behavior happens. If you reboot your phone once every few days, it rarely happens, and if so, it's not nearly as drastic of a drop.