The South African national under-17 side, who ended top of Group B, were outplayed by the Group A runners-up at the St Francois Xavier Stadium in Port Louis.
The hosts scored on either side of half-time through Louis Mitraille to set up a final date with Zambia, who beat Malawi 2-0 in their semifinal played earlier on Friday.
Molefi Ntseki's side will now face the young Flames in the third/fourth place play-off – a curtain-raiser for the final – on Sunday.
South African starting XI: Constandino Christodoulou (GK); Bryn Deeley; Sizwe Ntanzi; Kieron Jacks (C); Barry Sithole; Cade Erickson; Storm Jonas (Segotlong 84’) ; Mohammed Shahabodien (Da Silva 64’); James McFarlene; Olifile Ramatlo (Makambi 72’); Junior Nare
Substitutions: Thabang Maema; Omphile Moeletsi; Tshegofatso Mathibe; Joshua Momodu; Junior Khiba; Alex Da Silva; Lungile Makambi; Boikanyo Segotlong; Azola Tshobeni
Mauritian starting XI: Jean Michel (GK); Maison Rouge; Jean Gentil; Jean Francois; Caylan Wilson; Jean Aristide; Ludovic Milazar; Emilo Hyopolite; Louis Philibert; Andrew Aristide; Chiu Chung Fat
Substitutions: Jean Capricieux (GK); Yoan Dupre; Jeremy Kawoa; John Lan; Jean Cisimir; Louis Minerve; ; Kentiss Bhugeerathee; Jean Martin; Louis Mitraille