I may have been to quick to respond rereading your post I think you did ground at the sender. You still need to check resistance from the gauge to the sender. Say you find 12 ohms resistance in the wire, grounding it would still show full but add 8 ohms in the sender and now you have 20 ohms and the gauge is off. Also check resistance between the sender body and the tank, and tank to body, resistance here will also add to the total and throw off the gauge. It also could be the float may not make the full swing I bought a brand new sender and the float had a leak and slowly sunk after 2 weeks the gauge would only read 1/2 with a full tank. Remove and shake the float any liquid inside and it leaks.
Good luck
Ed