The G2 does indeed have 4GB of internal storage, but not all of it is visible to the operating system. The internal memory (/dev/block/mmcblk0) shows up as 2256 MB which place it solidly in the this-is-4GB-of-memory camp.
There are several reasons for confusion on this point. Of the 2256MB of internal memory visible to the OS, 1.3GB is allocated to /data (Storage for apps). This 1.3GB is what you see when you look at "Internal Phone Storage" in Settings->SD Card & Phone Storage. Partitioning in this was has been standard on all android phones.
The new part with the G2 is where the rest of the 4GB of internal memory are. There has been wild speculation on this point, but a backup copy of the entire OS portion of the phone or space for future updates make the most sense.
The G2 is indeed supposed to have 4Gb but the Desire Z (which is G2's twin with Sense, for Europe) only gets 2Gb. It seems like a mix-up occured somehow between the 2 phones, because a lot of G2s only have 2Gb.
I guess T-Mobile knows the issue and maybe you could get another phone.