Why doesn't Arduino 1.0.1 use the latest GCC?

The reason is probably that noone's spent the time testing it for bugs - newer versions of optimising compilers tend to have bugs. You'll have a far easier life if you update compiler versions after they've been shaked down in the wild for some time. The principle of "if it isn't broken don't fix it" applies.

If you want to try more recent gcc-avr versions there is no-one stopping you.