McRae, in his Subaru Impreza, had to win to have any hope of taking the title in the final round of the year, the British rally, later this month.
But to do so he had to withstand a furious final charge from the Finn, the defending world champion, who was fastest in all four special stages and made up 31 seconds on McRae to take his Mitsubishi Lancer E4 to within six seconds of victory.
"To come out on top after a scrap like that and still to be in the fight for the world title is really something special," McRae said. "I had a little spin on the second stage today and I overshot a junction somewhere else. In the end I was just giving it everything."
If Makinen had won, the title would have been his for a second year, following the retirement yesterday of overnight leader, Spaniard Carlos Sainz, in his Ford, with engine failure. Sainz retired on the opening stage, at Bunnings South.
McRae, taking care to avoid any serious problems, completed the 24 stages of the rally in an overall time of 4hr 5min 31sec. It was his second victory in the event after 1994.
Frenchman Didier Auriol, in a Toyota Corolla, finished third ahead of another Briton, Richard Burns in a Mitsubishi Carisma GT, and New Zealand's Possum Bourne in another Subaru Impreza 555.