Schwartzel, who hails from South Africa, stands at 12-under-par 204. He kept the lead, but those directly behind him changed drastically.
Mark Pilkington was one of two players to fire a 7-under 65 in round three. He jumped from a tie for 11th to a share of second at minus-10. He stands alongside Lee Westwood, who inched from fourth to second with a 67.
Des Terblanche matched the 65 of Pilkington to climb into fourth at 9-under-par 207. Alvaro Quiros, tied for fifth entering round three, is now alone in fifth at minus-8 thanks to a 68 Saturday.
Schwartzel, who won this event two years ago, looked as though he would run away with the title early in the third round. He birdied two of the first four holes at Leopard Creek to move to 10 under.
The 22-year-old rolled in a 12-footer for birdie at the fifth, then chipped in for eagle on the short par-4 sixth.
Schwartzel cooled off quickly however. He bogeyed three of the next four holes to tumble back to minus-10, where he was one clear of Pilkington and Terblanche.
As Schwartzel parred his next three holes, Pilkington completed his round at minus-10 thanks to a birdie at the closing hole. Schwartzel had plenty of golf left to regain the lead. He did exactly that thanks to a birdie at 14th.
Westwood jumped into a tie for the lead with and eagle on the 15th. Schwartzel responded with a birdie at 15 to move out in front at 12 under.
Schwartzel parred the final three holes to finish two clear of the field as Westwood closed with a bogey to share second at minus-10.
Pilkington got off to a hot start, but it was his even stronger back nine that got him into the mix. The Welshman birdied the first two holes before parring the next seven.
Around the turn, he dropped in a birdie putt at the 10th to get to minus-6. Pilkington ran off three straight birdies from the 13th and closed with his third birdie in three days at the 18th.
Westwood had a streaky front nine before climbing the leaderboard on the back. He birdied two and three, but bogeyed the following two holes.
The Englishman came right back with birdies on the sixth and seventh. Westwood birdied the 12th for the third consecutive round before a birdie on 14 got him to minus-9.
Westwood eagled the par-5 15th to jump into a share of the lead. However, his closing bogey left him two back with one round to go.
Hennie Otto carded a 3-under 69 and is alone in sixth at 7-under-par 209. Oliver Wilson, who shared second place after two rounds, managed an even-par 72 in round three. He is tied for seventh at minus-6 with Ross Fisher (68) and Mattias Eliasson (68).
Ernie Els, who won this title for the fourth time last year, carded a 3-under 69 to move into a share of 16th at minus-3. Rafael Cabrera Bello, who shared second with Wilson entering round three, faltered to a 5-over 77 to fall into a tie for 31st.