I had a 1990 Silverado that had a similar problem. The odo would work fine, then stop, then run backward! Really strange. I pulled the cluster and checked out the circuit board. Turns out that there were several bad solder connections on the board where the odo plugged in. I soldered them up and it worked fine ever since. This might be worth investigating on your car. Good luck.