As with some of the other posters that have dealt with GIS in one form or another, so do I. I am a GIS analyst for a county government, and I can tell you that when any new roads are cut, we are the ones that start the ball rolling. So, you can see that over time, lots of governmental organizations are the ones that initally put these roads out there (aka make available for distribution). If you take my particular organization, multiply that by every county and local government in the country, you can see the conflation that occurs when your major road navigation companies try to stitch these together. I dont know the exact number, but some states have different projections for their data, and there's at least one for every state. States that have some kind of non-equal extents (california and north carolina come to mind)usually have multiple ones. Assembling this data takes time and effort, even if it's just updating what they already have.
Another problem is that you dont want every tom, dick, and harry editing GIS data for the masses. Control is key, and there is an implication that the data has been quality checked and will lead you to wherever you go. If you have grandpa out there, logging some points and uploading them to the public, how do you know that he put the data through differential correction and the lines are topologically correct?
One final thing...my county doesn't try to profit off of it, but there's many, many governments that charge some pretty high fees for somebody to go in and buy their data. You think that they would give that up easily, when they're basically making total profit off of the data and we have to maintain it as part of our job? No way.
So my advice is this: there are ways to convert and upload basic GIS shapefiles into your GPS units if you so wish. Check with the local authority to get your best data. Our E-911 system uses it, shouldn't you?