Having spent some time rooting and ROMing, these are my thoughts. Even if you don't ROM or root, which I can understand, there is a reason why, when you do, you have to wipe data and factory reset in between each new ROM change. If you don't, you get all kinds of weird bugs. For example, the sync icon in the notification bar. Force closes. Camera app problems. Gmail issues. Most of the things that have been reported can be resolved by a factory reset. I get why people don't want to do that, because it's a pain (although again, it doesn't really bother me because I've spent so much time playing with ROMs, but I know a lot of people have spent a ton of time invested in that particular iteration if their device) but it will solve a ton of problems for you. Having people upgrade from one OS to another iteration of that OS with very different framework can cause a lot of problems for you if you don't do a factory reset.
I know no one likes to hear it, but my suggestion would be: do some backups of the stuff that you care about, and take the time to do a factory reset. When you do, and you log into your Google account when the phone is starting up for the "first" time, it will automatically add back all of your apps. The only really big pain is signing into everything again and setting up all of your homescreens, if you spend a lot of time doing that. Even then, I've gotten to the point where I can do it all in about 20 minutes, and I have completely customized everything. It's good to do for your phone occasionally, and it helps it run faster. Any computer user will tell you that formatting once in awhile is a good thing.
Hope this helps some people, and good luck with the GB problems!