Both Mali goals came from Bassira Toure while Ghana were briefly level through Black Queens captain Elizabeth Addo.
Cameroon’s front three – Aboudi Onguene, Gaelle Enganamouit and rising star Nchout Ajara – all scored.
Group A will be decided on Friday when Ghana face Cameroon in Accra and Mali play Algeria in Cape Coast.
In the day’s first game, Bassira Toure – who opened the scoring against the run of play from the penalty spot after 25 minutes – was named player of the match.
The home fans grew angry after the referee from eSwatini, Letticia Viana, denied several penalty claims.
Yet they were celebrating when a slight touch on Elizabeth Addo enabled the Ghana captain to draw her side level, also from the penalty spot, after 71 minutes.
But Ghana’s lead lasted just four minutes as home goalkeeper Patricia Mantey spilled a free-kick, so allowing Toure to tap home the match-winner.
Meanwhile, Cameroon – runners-up in 2016 – scored after 13 minutes when Aboudi Onguene raced into the area for a one-on-one with the keeper Kahina Takenint, who made a good initial save only to see the ball rebound against the striker and into the net.
The Indomitable Lionesses extended their lead nine minutes after the break when Ajara found Enganamouit near the penalty spot who duly made no mistake.
Ajara added the third six minutes later when Takenint fumbled the ball with the Cameroon forward reacting quickest to poke home.
On Wednesday, the semi-finalists from Group B could be decided if Zambia beat Nigeria and South Africa defeat Equatorial Guinea.
The latter were thumped 5-0 in their opener by Zambia, while South Africa’s Banyana Banyana inflicted a shock defeat on defending champions Nigeria.