I have had this problem for over a year, tried flushing injectors at dealer, cleaned throttle body sev times, and Maf. New plugs and wires, i add fuel cleaner quite often. would any of the items you listed initiate a code? i have no engine light ever come up, only had a engine code for misfires when cat was plugged which has be fixed.
And yes the truck is 'lopey', seems almost like timing is off, as a matter of fact the engine pings and is very nticable between 1500/200 rpm, unless i have some other serious mechanical issue

i don't think it is piston slap?.
Thanks Guys