The Northern Irishman had been heading for a second consecutive missed cut in major championships when he stood five over for 11 holes of his second round on Friday, but the former world No.1 birdied four of the next six to finish level par.
He was still level for the tournament after 12 holes last night but birdied the 13th, holed from 50ft for another on the 17th and then chipped in on the 18th to card a 67 and set the clubhouse target on three under.
And Englishman Lee Westwood, who had dropped three shots in the last two holes of his second round 73 to start the day eight off the lead, also found himself in the mix.
Westwood, still seeking a first major title at the 63rd attempt after letting a two-shot lead slip going into the final round of the Open, carded three birdies and one bogey to reach the turn in 33.
The 40-year-old then dropped a shot at the 11th but birdied the 12th and 14th to improve to four under and within three shots of the lead.
McIlroy said: “I probably made up at least three, three and a half shots on those last two holes.”
The 24-year-old, has been watching videos of his eight-shot win last year for inspiration after carding just one top-three finish so far in 2013. His victory at Kiawah Island was one of five in 2012.
He added: “It’s getting there. It was good to feel the sort of rush again. I felt it a bit in San Antonio this year [where he finished second to Scotland’s Martin Laird]. Making a birdie on 17 is like an eagle and then to follow it up with another on the last is even better.
“I knew they were going to toughen the golf course up today. I sort of thought two 65s would still have a chance, 10 under par. But the way the conditions are with the swirling wind, it’s tricky out there. I felt like I still had a chance.”
Jim Furyk found himself at the top of the leaderboard after four birdies in his first 12 holes put him to nine under, one ahead of overnight leader Jason Dufner.
Scotland’s Marc Warren also had a good day, following up his 67 on Friday with a third-round 68 which propelled him up the leaderboard at two under. Warren enjoyed birdies at four and five but bogeyed the sixth. Further birdies at eight, 14 and 17 were tempered by dropped shots at nine and ten. Compatriot Scott Jamieson shot a par-round of 70 to remain one over while Stephen Gallacher, the only other Scot to make the cut, fell away with a 76.
US Open champions Justin Rose saw his hopes of a second major title in the space of two months suffer a potentially fatal blow.
Rose began the third round three shots off the lead and looking to join golfing legends Gene Sarazen (1922), Ben Hogan (1948), Jack Nicklaus (1980) and Tiger Woods (2000) as the only men to win the US Open and US PGA in the same year.
But he dropped six shots in the space of four holes to plummet down the leaderboard, making a bogey at the second and a double bogey on the third. Rose, winner of the US Open at Merion in June, dropped another shot at the par-five fourth and then saw his approach to the fifth spin back into the water to cost him two more shots.
Halfway leader Dufner also fell foul of a tough opening stretch in the final major of the year. Dufner, who had equalled the lowest score in major history with a 63 on Friday, also took six on the fifth after driving into a water hazard. That brought a number of players right back into contention, including Westwood.