South Africa has won the Australian stopover in the sevens rugby world series for the first time in nine years after topping Fiji 21-19 in the Perth final.