Ajax missed a penalty in the second half, and there was some confusion as substitute Koen van de Laak left the pitch with a suspected injury.
Alcardo van Graan was handed his first start of the season, replacing the injured Bradley Grobler, while Van de Laak made his return to the match-day squad with a place on the bench.
Toriq Losper created the first chance on goal when he latched onto a Granwald Scott cross and hit a half-volley, but his effort was saved by Azwindini Maphaha.
Leopards' first real attack came on the half hour mark when Tiyani Mabunda made a run along the flank before cutting in and shooting at the near post, but Sander Westerveld was equal to the task.
The game lacked in flare, and an over-hit cross into the box for Van Graan summed up the first-half performance, as the teams walked into the break all square.
Khama Billiat's pace was causing problems for Black Leopards, and he won a penalty just before the hour mark.
Lebogang Manyama stood up to take the kick, but it was a weak shot and the keeper easily dropped and gathered the ball.
Injury forced Jan Pruijn into making a double substitution, when Van de Laak and Aiden Jenniker came on for Nhlanhla Shabalala and Musa Lebusa, just after the hour mark.
Confusion struck when Van de Laak, who was only on the field for eight minutes, removed himself from the field and headed down the tunnel. He was signaled back by the referee for a booking, and Nhlanhla Vilakazi took his place for a suspected injury.
The Urban Warriors once again found their defence sliced open as Obaje worked his way through the backline before slicing a low effort into the bottom right corner with 10 minutes remaining.
There was to be no comeback for Ajax as they fell to yet another disappointing defeat at Cape Town Stadium.