Take a close look at the sender- if someone used teflon tape to seal the threads into the block, the required ground on the sender could be shaky.
Also check the continuity of the engine block ground to the rest of the system- check from the block to the A pillar or anything on the birdcage.
Another quick and dirty test- pull the lead off the sender, hook a 12v testlight between that and a ground, turn the key on- testlight should glow (on but not real bright) and the gauge should be about 1/2 scale. Not real accurate, but it does prove the gauge is working correctly.
From your description, I'd guess the sender is the problem- either the sender itself, or a ground from it. There are loads of senders out there that will fit, but not all read the same.