I`m having some of the same issues. My problem is the other way around. If I`m on a known 3 hour trip, it could say ETA in 3 hour 50 mins.
IMHO ETA is calculated based on roadspeeds. Have done some testing on this matter. I have put more accurate roadspeed now. Seems to be more correct, but not 100%
Maybe I have to do more testing, and of course reading aswell.