That is because 32-bit applications are restricted to 2GB per process. To go higher, a game would either need to spawn multiple processes or go 64-bit. Sharing information between two processes can be tricky at best, so obviously 64-bit is the way to go. Unfortunately this is hampered by remaining popularity of WinXP as well as 32-bit editions of Win Vista and 7.
It is beyond me why MS felt it was necessary to still have 32-bit editions with Win 7 and 8. At this rate we'll never get rid of the skimpy memory limit because people out there may have 32-bit Vista, 7 or 8.
Well, Vista and newer are able to use that extra RAM as a cache. That includes your usual routine work and games. 4GB is enough, 8GB is plenty. Above that is overkill really. But that didn't stpp me from getting 16GB for my new rig.

It costs like $45 to get 8GB of RAM. As far as I'm concerned, the 4 vs 8 argument is a moot point because of how cheap the superior option is. For almost everyone, the memory is the cheapest component.
And yeah, you want to just upgrade everything.
DDR2 is actually getting more expensive than that I'm afraid. As time passes, it'll get even more expensive until you can't find them anywhere. DDR3 is cheap though.