How do you fix a broken gas gauge with a gas light that stays on most of the time even when tank is full?

Sounds like you will have to replace the sending unit that is in the gas tank with the fuel pump. This is the electrical unit that has the float on it. When you fill your tank the float moves and tells your gauge where the level is at.

You could aways hope that maybe the plug is loose at the tank but unless someone messed with it and broke the plug clips in the past that is unlikely. If you have over 100,000 miles and decide to replace it you should go ahead and replace the fuel pump too while your in there to keep from having to do it down the road later on. Hope this helps.