My 01 did this a while back and it was the fuel filter. We had about a 9,000 enclosed trailer and we were heading to Alabama from nothern Ohio. Well after are first fuel stop we got back on the highway and was on the throttle to get up to speed and all of a sudden we just lost half are power. It would only rev about 2,000rpm. Well we maintaned about 45mph untill we got to the next exit and we checked things out and there was nothing we could see. So I thought maybe it was my chip going bad so I took it out. Well I started the truck and held the throttle to the floor and it went right to 3200rpm so we took off again. Well long story short, anytime we came to a grade and you tried to maintaine speed, it would do it again but if you pulled over and shut it down for a couple of minutes you were fine. So after about 30 times we were there. It was night time with no were to buy a filter, and we had to be there in the morning. So we had to keep going. I learned to keep a spare filter in the truck after that. The fuel was from flying J and when I removed the filter it was full of larger size rust and crap. I would quess that by shutting the truck of the dirt would "fall away" for awhile.
I know this isnt the "real , default to 3rd gear limp mode" but not sure if this is simular to what you are seeing. My filter was about 3 weeks old at the time.