Lean codes on both banks don't come up for no reason. Verify first whether it's a lack of fuel or unmetered air. The way that you describe a lack of power at high engine speed points toward fuel. Unmetered air should give a rough idle.
Drive it with a fuel pump gauge plumbed in at the rail. I bet it will fall flat on its face when you stomp on the throttle going up a hill.
Fuel pumps are common, and so are fuel pump driver modules. The FPDM receives the fuel demand signal from the PCM and then uses a pulse width modulated internal relay to complete the circuit to the fuel pump. Due to FPDM location it's very common for eastern trucks to have it eaten away by salt and debris, or for its ground to be corroded.
2003 GMC Sierra 3500 -- dually, 4x4, hasn't blown up yet and that's what i look for in a truck
Ford Doctor -- They come in broken and leave fixed. Ford of Canada Master Tech