I would first go ahead and lubricate the speedo cable... Speedo shops are extremely expensive. I had a bad cable and thought it was my speedo and the guy in the shop wanted $95 just to take a look at it, posibly replace the mechanism, calibration extra $$$, but I would have to take the speedo off the car myself.
Therefore, try disconnecting the speedo cable from your engine first (next to the driver's side firewall), and then try getting that ugly speedo cable clip from the back of your speedo (this is a bear to do, do some search on the forum on this, but it can be done without taking any parts of the dash off) and then pull the inside of the speedo cable from inside of your car out (leave the cable sheath where it is). Then take some lithium grease and apply thin layer all around that speedo cable core and put it back in place. I recommend not to attach the speedo clip back on the speedo as mine is working just fine for the past 18 months but the next time you need to take it off it will be easier. There is enough friction to keep it in place.
This should also fix any noise coming from your speedo at all the normal speeds too, and even a jumpy/vibrating needle. Finally if this did not fix it, take the speedo to the shop, you would now do this whole thing in 2 minutes... Taking the speedo out of the cluster is another effort, but not so bad comparing to the clip on the speedo...
Hope this helps :****: