If you really want to buy bitcoin with little to no fees, you'd have to spend a bit more time in looking for those sell offers.
1. Look for local sellers that are willing to sell bitcoin to you at market price; may it be through local social media groups, or through something like Mycelium Local Trader[1].
2. Look for sellers here on the Currency Exchange[2] section; though most are going to be sold in USD(you'd have to convert it to ZAR).
I personally know a friend in the city I'm currently in that sells bitcoin, so I just buy off him without any fees and any markup. Hence I don't use exchanges that much except when I need to buy/sell coins urgently. Probably try looking for your own sort of "personal bitcoin dealer".
[1]
https://mycelium.com/lt/help.html[2]
https://bitcointalk.org/index.php?board=53.0