McIlroy followed his opening 64 with a second-round 74, but hit back by posting five birdies and an eagle on the seventh hole in a bogey-free round of 65 on Saturday.
"That's what life is all about," McIlroy told Sky Sports Main Event after moving to 13 under par.
— The European Tour (@EuropeanTour) November 23, 2019
"It's learning from what you do and being of a present mind so that you can learn as you go.
"I sort of figured out what I did wrong (on Friday) and I was able to rectify it somewhat and get myself back in the tournament.
"I've got to play another really good round of golf to have a chance, but it would be awesome to win around here again and obviously cap off what has been a great 2019.
"It is nice to come back to courses that you're familiar with all the time and that brings its own advantages compared to maybe some of the other guys in the field.
"It's been a great year so far and this is my last event of the year. It would be wonderful going into the break to finish on a high."
McIlroy, who is chasing a third victory at the season-ending DP World Tour Championship, headed into the weekend six shots off overnight leader Lorenzo-Vera.
The Frenchman dropped a shot on the 18th after four birdies to finish with 69, while Rahm hit seven birdies and one bogey for a 66.
Rahm, who would become the second Spaniard after Severiano Ballesteros to win the Race to Dubai title, said: "I'm really confident off the tee, I'm really confident with every part of my game right now.
"I'm hitting a lot of greens and giving myself chances. Every time I hit one close I'm confident that I can make it.
"A lot of people are playing good, hopefully I can keep this going for 18 more holes and be the last man standing."
Tommy Fleetwood sits four shots back in fourth place on 11 under after three birdies and a bogey in a third-round 70.
The Englishman, winner of the Nedbank Golf Challenge in South Africa last week, is hoping to win a second Race to Dubai title in three years.
Fleetwood needs to at least catch Rahm to have any chance of being crowned Europe's number one.
"There's one tournament going on and then there's the Race to Dubai going on," he said. "I think it's just an extra challenge, that's all.
"So far, I feel like I've done a great job of it.
"I've been lucky enough that I've been doing this for three years in a row now coming to this event, so I'd like to keep that track record going and tick a few off."
Belgium's Thomas Pieters is fifth after carding a second-successive 68, one ahead of Sweden's Marcus Kinhult, who also hit 68 on Saturday.