Airplanes are also good at holding a precise altitude. When I've flown with a friend in a 172 and he puts the autopilot on, it holds whatever altitude he sets without drifting a foot (as long as the air is smooth).
As for GPS versus altimeter accuracy- altimeters do have to be reset every so often below 10,000 ft., and are set to a standard altitude above that height. As a result of that standard setting, I'm guessing it would make it more inaccurate then a GPS. The reason for the standardization is so all the planes fly at the same flight levels regardless of variations in local atmosphere. At 10k feet, the odds of flying into a land-based obstacle is nearly nil.