Fuel gauge gremlin.

Sending unit in the tank is bad/broken.
This happens when the wire wrapped around a little board gets worn through, and interestingly enough it usually happens first in an area of the sender that has the most use on it.
In other words, if a person generally only fills the tank half way or less the sender wears out in that area first.
Check out this pic where the wire is wrapped and the metal arm slides up and down.
When that wire gets a break (worn through) in it, the sender quits or only works in the area that the wire isn't worn through or broken.

There is a little more to it than that, but I just told you the part that matters to your problem.

fuel2.jpg