Speedometer Pinion Gear

If the actual (GPS) speed is "30", but the speedometer reads "40", then the speedometer needs to be slowed down. Needs a bigger gear. 30mph÷40mph=0.75. And 29 teeth÷0.75=38.7 teeth. It looks like you need a 39 tooth gear, based on the observed error.
However, with a 225/60-14 (24.6") tire and a 3.23 gear, you should need a 34 tooth gear. Something is fishy here.