WIN: Some awesome golf merchandise
The 37-year-old needed a top-two finish at the north-west South African resort to ensure he stayed ahead of American golf icon Tiger Woods, who was poised to win the Chevron World Challenge in California later on Sunday.
Westwood chipped into the hole from behind the green at the final hole to finish a four-under round of 68 with a flourish and South African Tim Clark carded a 71 to snatch second place.
It was the second tournament triumph of the year after the mid-year St Jude Classic for Westwood, who lists cars, cinema, snooker and backing second-tier English football club Nottingham Forest among his interests.
Trailing Irishman Padraig Harrington by two strokes after the opening round of the 12-man invitation tournament known as the African Major, Westwood fired an eight-under 64 in the second round and never looked back.
He stretched his advantage to five strokes three rounds into the pursuit of a record 1.25-million-dollar first prize and was never threatened over the final 18 holes on another hot, early summer day.
Long before the final putt dropped, the battle was not for top spot but the runner-up place between Clark and fellow South African and two-time US Open champion Retief Goosen at the par-72 Gary Player Country Club.
"Only your wife and your pet remember when you finish second," joked South African golf legend Gary Player as the struggle unfolded, but there was a 210,000-dollar gap between runner-up and third.
And it was Clark, recovering superbly after a one-over opening round, who finished closest to Westwood as he compensated for less distance than rivals off the tee with accuracy and a clinical short game.
Final round scores (RSA unless noted):
271 - Lee Westwood (ENG) 68-64-71-68
279 - Tim Clark 73-67-68-71
280 - Miguel Angel Jimenez (ESP) 69-69-71-71, Retief Goosen 72-70-70-68
283 - Ernie Els 71-68-71-73, Ross Fisher (ENG) 67-68-73-75
285 - Robert Allenby (AUS, holder) 70-70-73-72, Padraig Harrington (IRL) 66-72-72-75
286 - Anders Hansen (DEN) 72-70-68-76, Justin Rose (ENG) 70-72-72-72
287 - Edoardo Molinari (ITA) 71-67-73-76
290 - Louis Oosthuizen 71-73-72-74