Santos added a bogey-free 66 to his opening 62 at East London Golf Club to finish 14 under par, three shots clear of
The former European Tour rookie of the year had picked up two shots in his first nine holes before play was suspended due to torrential rain which caused a delay of 95 minutes.
When play resumed, Santos carded further birdies at the third, fourth and seventh to boost his chances of a second European Tour title, his first coming in the Madeira Islands Open in 2012.
Zanotti has yet to win on the European Tour and lost his card at the end of last season after finishing 140th on the Race to Dubai, only to swiftly regain it by coming second at the qualifying school.
The 30-year-old also returned a second round of 66 and, like Santos, has not dropped a shot in 36 holes. Playing partner Simon Wakefield added a 67 to his opening 66 to lie five shots off the lead on nine under.
South African players have won nine of the last 12 European Tour events on home soil and Jean Hugo, Ulrich van den Berg and Ruan de Smidt were all a further shot back on eight under after rounds of 66, 68 and 66 respectively.
Santos saw his advantage cut to just a single shot thanks to a brilliant finish from England's Oliver Fisher, who birdied his final four holes to complete an error-free 63.
That lifted Fisher to 13 under par and outright second place, with Zanotti joined in third by Denmark's Lucas Bjerregaard and England's Adam Gee, who had completed rounds of 67 and 65 respectively.