I was able to reproduce the problem with the zoo.gpx file -- thanks for providing this. Fortunately, Geohunter does not round the values when adding them to the database. Rather, the problem arises when reading the values back from the DB: apparently an unnecessary Double -> String -> Double conversion takes place, which rounds to three decimal places.
The attached patch, I believe, solves the problem. (At least for waypoints: I did not check if this problem also occurs for the main cache.)
Cheers