I've done this hunt too. If anything less than the vast majority of your site's visitors are mobile, then HTML5 geolocation isn't going to suit your needs (at least it won't for another 5 years.)
Upgrading to MaxMind's paid database is really the best option, assuming you can afford it. If you can't afford it and you can't cope with the inaccuracies of the current solution, you might be able to go with a hybrid-solution that'd incorporate Google Maps (http://code.google.com/apis/maps/documentation/javascript/ba...)