Captain Graeme Smith and Shaun Pollock set South Africa on the way to their win with aggressive batting early in the day before rain caused a delay of three hours 45 minutes.
Left-arm opening bowler Zaheer Khan struck twice when played resumed, dismissing both Smith and Pollock, but Jacques Kallis and Ashwell Prince crafted a 77-run partnership to consign India to their third series defeat in as many tours of South Africa.
Khan had Kallis caught at midwicket with two runs needed to finish with four for 62.
India won the first Test in Johannesburg by 123 runs but South Africa hit back with a 174-run win in the second Test in Durban.
South Africa became the seventh team to win a three-Test series after losing the first match.
The home side were racing towards victory when Smith and Pollock put on 56 before heavy rain started to fall 50 minutes after the start of play.
The pair added another 13 runs before Khan dismissed Smith for 55.
Smith started the series badly but made 58, 94 and 55 in his last three innings and captained the side positively in the decisive match.
He was fortunate with the first ball he faced Saturday, scoring four runs off an inside edge against Khan but he set the tone for the morning in Khan's next over when he thumped the bowler past extra cover for four and then played a wristy stroke behind square leg for another boundary.
Pollock was promoted to number four after a wicket fell with the last ball on the fourth day. It proved a positive move as he and Smith scored briskly.
Between them the pair neutralised the threat of Indian leg-spinner Anil Kumble, with Pollock in particular using his feet and taking the attack to the bowler.
Pollock was beaten early on by a ball which drifted in and then spun past the bat but otherwise looked comfortable.
Kumble bowled unchanged for 20.4 overs until only 13 runs were needed, without adding to the wicket of Hashim Amla which he took with the last ball on the fourth day.
Bowling into a large patch of rough outside the left-hander's off stump, Kumble made one ball lift sharply to hit Smith's glove. The ball went past short leg for a single to raise the 50 partnership. Another delivery kicked viciously, beating both Smith and wicketkeeper Dinesh Karthik.
Kallis and Prince took 125 minutes and 171 balls over their 77-run stand which ended in anti-climax when Kallis top-edged an attempted pull against Khan and the ball looped gently to Dravid at midwicket.
The all-rounder was out for 32.
Prince hit the winning run when he pushed the ball past Sachin Tendulkar, who came on to bowl in place of Kumble towards the end. He finished with 38 not out.