If lubricating the cable did not fix it, I'd say lubricate the speedometer itself.
Not that hard to do. Remove it from the instrument panel, take the back cover off, look for some small brass cup-shaped plugs.
Pull them out by clamping a small drill bit into a vice, the gently push the small brass cup on to the tip of the bit and twist a bit, then pull up. The cup will stay on the end of the drill bit.
Drip some light oil into the hole. You may find a wick in the hole (should find). Remove it and clean it up, if you want, then oil well. Then tap the brass cup back in place.
A light bit of grease in the gear area (remove cover to see gears).
Reassemble in car.
If the shaft inside the speedometer binds a bit, it will make the speed wheel swing up and down because the speedometer cable itself twists up like a spring a bit, then releases and spins the speedo a bit faster.