Celtic were hoping to go into the break in the clear after enduring a hat-trick of defeats lately in the Premiership.
But as early as the fourth minute, Celtic went in front after poor ball retention from Peter Leeuwenburgh set up Ndumiso Mabena to bundle home from close range.
A cross into the box by Surprise Ralani found its way to Siphelele Mthembu, but the forward steered the delivery over the top on 15 minutes.
Two minutes later, Given Mashikinya's bursting run into the box afforded him the chance to to steer home the second despite the presence of a host of defenders.
The Citizens were well and truly awoken after the set-back, but still struggled to beat down Siwelele’s defence.
A minute before the half hour mark, Ebrahim Seedat went close with a long-range shot from outside the box.
After breaking down from the right, Riyaad Norodien’s low cross found Craig Martin, who headed narrowly wide of goal.
A pin-point pass from Thabo Nodada unleashed Teko Modise through on goal, but after bringing it down nicely, he directed it over Kabelo Dambe’s head on 36 minutes.
Six minutes from the break, City rang the alterations. Gift Links entered for Norodien in an all attacking move.
The home side knocked off the earlier shackles and reduced the deficit through the head of Mthembu on 58 minutes.
This led to their second offensive introduction, as Zimbabwean striker Matthew Rusike came on for the veteran Modise.
Sustaining the earlier pressure, the Citizens levelled matters as the substitutions paid dividends in the end. A throw-in from Shane Roberts opened up space for Surprise Ralani to guide home from close range in the 71st minute.
The come back was completed three minutes later after Ralani was found at the right place and time to complete his double.
The Cape Town outfit proved difficult to break down despite the number of bodies thrown forward inside the final minutes.
The visitors were unable to get back in the mix, leaving City to climb into the top eight albeit temporarily while Siwelele’s woes rages on.