Gift Motupa scored two penalties for South Africa to go with a further strike from Thabiso Kutumela as coach Shakes Mashaba’s side joined Zambia and Zimbabwe on four title wins each at the top of the all-time table.
Onkabetse Makgantai and Kabelo Seakanyeng netted for Botswana as they first took the lead and then equalised at 2-2, but could not grab what would have been a famous win.
Makgantai gave The Zebras the lead on 16 minutes with a long-range strike that floated over the head of South African goalkeeper Reyaad Pieterse.
But South Africa were level when Judas Moseamedi was felled in the penalty box and Motupa stepped up to beat Botswana gloveman Mwampole Masule.
The teams were locked at 1-1 at halftime, but South Africa took the lead after a quick free-kick released Motupa and he laid the ball on a plate for Kutumela.
Pieterse had a moment to forget when he fumbled Kabelo Seakanyeng’s free-kick into his own net as Botswana pulled level again.
It looked as though the game was headed for a penalty shoot-out until Joel Mogorosi was adjudged to have handled in the box and Motupa scored his second penalty of the night.
Earlier, Swaziland claimed the bronze medal for the third time in their history after 1999 and 2002 with a deserved 1-0 success over guest nation DR Congo.
The winning goal was worthy of claiming any match too as Sabelo Ndzinisa rifled the ball home from the edge of the box.
SATURDAY’S CUP THIRD-PLACE PLAYOFF
Swaziland 1 (Ndzinisa 41’) DR Congo 0
SATURDAY’S CUP FINAL
South Africa 3 (Motupa 33’pen, 88’pen, Kutumela 66’) Botswana 2 (Makgantai 16’, Seakanyeng 70’)