I had the same problem on ny 87 420sel and it was the fuel sender unit. It is easly repaierd, thank god cuz a new one was over $100. Remove the sender from the tank. Open it, and you will find a float that mover a shorting bar between two small wires. These wires act as resistance elements. The shorting bar slides up and down along the length. The resistance changes and the guage moves as a result. The problem is that the wires get coated with varnish or something. Using steel wool (very fine 000) gently polish the wires to remove any deposits on them. They are delicate so be careful. The shorting bars which are gold plated now make good contact and the problem should be solved.
Hope it works for you.