Grace began the penultimate round with a five-shot lead on 16-under-par, but that was cut to four as Molinari birdied the par-four first hole.
But by the end of the front nine, Grace had restored the status quo as he birdied the third, fourth and seventh holes to make up for bogeys at the second and sixth.
The South African had some portions of pressure served to him by Molinari, with the Italian twice closing to within three strokes, after Grace’s bogey at the second and his own birdie at six.
But the par-three seventh saw a two-stroke swing as Molinari’s tee-shot found the bunker and his poor chip saw the ball run 25 feet past the hole and he was unable to make the par putt. Grace, meanwhile, drained his birdie putt from 15 feet.
It made up for the dropped shot on six when Grace’s drive went under a thorn tree and he was forced to punch the ball out back on to the fairway.
Danny Willett, the winner of the Nedbank Golf Challenge at Sun City last weekend, was alone in third place on 11-under-par, the Englishman joining Molinari on 12-under before a double-bogey on the par-four ninth hole pushed him back.
Shaun Norris was the next best South African, going through 10 holes one-under-par to go to 10-under overall, tied for fourth with the Dane, Lucas Bjerregaard.
Tjaart van der Walt, who was in third place after the second round, dropped four strokes on the front nine to tumble down the leaderboard.