I agree with all those who said it is most likely the sender or the gauge.
The sender is like a rheostat (a variable resistor that increases resistance as the float drops in the tank). The increased resistance, reduces the voltage to the gauge as the fuel level drops.
If you want to trouble shoot the sender, you can check its resistance values when full, and compare it to specs.
It is quite possible/probable that the sender has increased resistance over the years, it is wearing out.
You might also have a crappy (high resistance) connection to the sender. Either case will give you a lower gas level reading than what you actually have in the tank.
-------------------------------------------------
OK.... now time for a story, if you have time to read it, OR care to
I had a 32' A class motor home, that we used, to go cross country. That was our ONE big trip. We then used it each year to be a class A limousine, to take the family to Disneyland in Florida, where we didn't stay in the RV, but rather in a hotel.
So... one year I bring it home the day before we are ready to leave, to clean it up, and load it up. Sanitize the water holding tank, etc.
It has 3/4 tank. IIRC 70 gallon tank.
I try to start the generator, and it won't start... damn, that's important or we won't have roof air conditioning, and the cab air isn't enough on a hot day.
OK... so it starts on carb cleaner. Oh look... squirrels chewed on the fuel line to the generator! Got a new fuel line, but it still wasn't getting fuel. Maybe there is an in-tank fuel pump for the gennie. IDK, but the decision is made to repair it some-day while we are down there.
I figured... let me top off the tank, it should only take about 15-18 gallons, but let's do it and then go.
Well AT $2 a gallon, I started watching the pump at $30 ... $35 ... $40... $45!?? $50 ??? WTF??? $90
Sun of a gun! I was almost out of gas!
The generator won't drain the tank below 1/4 tank. That is why it wouldn't start.
With a full tank... the generator started right up.
I remember being really surprised, during the last stretch home during our last trip, that I was getting amazing mileage.
Yeah, what happened is that the wire from the sender was also chewed by those furry tailed rats, and snapped at 3/4 tank.
So here's the deal.
The gauge will typically stay where it was when you disconnect it/break the sender wire.
IF you short it, it will go to FULL tank.
I don't know what the resistance should be for EMPTY. It may vary with the gauge.