The only logical problem / solution would be a bad speedometer head which means replacing the speedo. Another choice - which seems remote - is that the wrong gear was put in the speedo cable adapter. You need one with half as many teeth.
It's unlikely (but not impossible) that your car had a rear end in it at one time that would have required the gear combination it has. Pull out the speedo cable adapter from the transmission and count the number of teeth on the drive gear at the end of the cable.
The adapter is attached to the trans. It's the thing the cable is inserted into. You need to pull the whole assembly out, not just the cable.