There's three things I can think of. Given the recent history, you might suspect a baffle in the tank broke loose and is holding the sending unit's float down. I've heard of that but have never seen it for myself. The tank might be deformed too causing the float to bind. The wire to the sending unit could be damaged. Older trucks used an "anti-slosh" module that plugged into the back of the instrument cluster to steady the resistance from the bouncing sending unit. I would think they're no longer using that by 2004 but if they still do, perhaps it was jarred loose.