Peter Shalulile scored an 84th minute winner for the Brave Warriors in a tense contest at Moruleng Stadium.
Namibia drew first blood in the 18th minute as Benson Shilongo bundled the ball home.
Sarivahy Vombola responded with interest with a quick-fire brace soon after.
However, Shilongo converted a Deon Hotto cross in the 32nd minute, with Shalulile deciding matters late on to make amends for a horror miss.
Mozambique booked a spot in Saturday's Final by edging Botswana 2-1 at the same venue.