Zambia ensured they would not finish outside the top two in Group B, while Kenya kept their semifinal hopes alive with a 2-1 success over Madagascar.
The Young Chipolopolo were dominant from the off against Malawi as they led 2-0 inside 14 minutes after goals from Damiano Kola and Benjamin Phiri.
Zambia have now scored seven goals and conceded none in defence of their COSAFA Under-17 Championship title as they confirm their status as one of the pre-tournament favourites.
East Africa guest nation Kenya kept their semifinal hopes alive with a 2-1 victory over Madagascar, who have been eliminated.
Kenya will now face Malawi in a showdown for second place on Tuesday, with the Young Flames needing a draw to advance.
Kenneth Mukuria scored both goals for the young Kenyans, his second from the penalty-spot, as they came from behind to secure the points.
Fabrizio Mosa had scored his second goal of the tournament for the Malagasy as he converted a penalty after 20 minutes.
It means much work for Madagascar to do before they host the African Under-17 Championships early next year, but their time at the COSAFA tournament will have been of great benefit.
They will also be severely tested when they take on rampant Zambia in their final pool match on Tuesday.
Monday’s fixtures will again be played at the Stade Anjalay in Belle Vue Maurel having been moved from the Stade Georges V in Curepipe to allow the pitch there to recover after heavy rains.
South Africa take on Namibia (kick-off 13h00 local, 09h00 GMT) after both sides won their opening matches of the tournament.
The winner will take a major step towards the semifinals and could yet book their place in the knockout stages of the later fixture between hosts Mauritius and Seychelles (kick-off 16h00 local, 12h00 GMT) does not produce a winner.
SUNDAY’S GROUP B RESULTS
Kenya 2 (Mukuria 25’, 41’pen) Madagascar 1 (Mosa 20’pen)
Zambia 3 (Kola 6’, Phiri 14’, Mulilo 74’) Malawi 0
MONDAY’S GROUP A FIXTURES
Namibia vs South Africa (KO 13h00 local, 09h00 GMT) – Stade Anjalay
Mauritius vs Seychelles (KO 16h00 local, 12h00 GMT) – Stade Anjalay