My GPS (Garmin GPSMap 60csx) does all of this, and so do the Colorado and Oregon models (with some small caveats).

If you set up a route or track in advance, the software on these units lets you see how far you are to your next waypoint (or any other), as well as to the final destination, using the distance of the actual route/track, not "as the crow flies". Don't know what I'm doing differently from you, but I've not run into the problems and limitations you list (for example, I use PC software to create routes with sufficient waypoints to closely follow the actual trails and distances).

Many such tracks and routes are available online at sites like National Geographic and GPS forums, and when they're not, it's not hard to make them in software like NG Topo or Garmin MapSource or even Google Earth.

The user interfaces on the software and GPS receivers most certainly could be improved - but they do manage to be pretty useful out there in the field, I've found.

Now, it would be even better if the map data, right out of the box (er, DVD), would have trails done up in a way that would allow you to just head out and not have to create a route in advance; instead, the GPS receiver should be smart enough to know you're on a trail and allow you to easily select trail segments to follow. MapSource is pretty close to being able to do that on the PC - so that at least allows making and downloading routes easier.