GM gauges are notorious for going out in time. they work off resistance, after a while the resistance coating they use wears off and the gauge no longer works correctly. In your case it sounds like more the sending unit in the tank is going south. First thing I would do is check the ground coming off the sending unit, clean it good and reinstall it and see if the problem improves, if not, it`s either the unit or the gauge. In the knowledge base of this site lists how to test the gauge, I tested my gauge and the test said the unit was bad, I spent $100 on a new unit and the gauge still didn`t work, so I found a site online called fix a gauge, ordered there repair kit and now all my gauges function correctly.