Grace had one bogey and a birdie on the East Course at Royal Johannesburg and Kensington Golf Club to finish with a 17-under total of 270 to edge out Englishman Jamie Elson.
The 23-year-old Grace saw his three-shot overnight lead cut to one as Elson made a 30-foot putt for eagle on No. 18 to finish with a blistering 9-under 63 and set the clubhouse target at 271.
Elson had seven birdies along with his eagle, including six in his first eight holes.
But Grace, one of 27 players to complete his third round in the morning, held on with nine straight pars coming home for the $260,000 winner’s share at the second event on the 2012 Race to Dubai. It was his second professional win after a 2010 victory on South Africa’s Sunshine Tour.
“It was pretty tough out there today,” Grace said. “I played really nicely, I hit the ball superb I think, and the putter was just cold. I couldn’t get the speed of the greens going today. Fortunately at the end of the day it was enough.”
England’s Richard Finch, who was tied with Grace on 15-under when bad light ended the third round early on Saturday, saw his challenge collapse with five bogeys and a double-bogey in his 78 on Sunday. He slipped to a tie for 24th.
Organizers had been forced to play catch-up for most of the tournament after thunderstorms and bad light meant the first three rounds had to be completed the following day.