Substitutes Ahmed Gaafar and Hussein Yasser came off the bench to lift the Whites, before Shikabala converted an injury-time penalty to wrap-up the win.
Zamalek remained in charge of the league table with 43 points, while Smouha are second from bottom on 17.
The Cairo giants, who welcomed back their ultras fan group White Knights prior to the game, ended a three-match winless streak with the home victory.
Poor start
Hossam Hassan handed Algerian striker Mohamed Aoudia a starting role at the expense of Gaafar and the fit-again Amr Zaki.
While Zamalek dictated play in the first half, the visitors surprisingly posed more threat on goal, thanks to the pace of lone striker Samuel Affum.
The Ghanaian had the best chance of the first half when he was sent through to find himself one-on-one with Abdul-Wahed Al-Sayed, but the Zamalek keeper brilliantly came out to make a crucial save before the half-hour mark.
The hosts were continuously struggling to find a breakthrough, forcing Hassan to make his first substitution after 33 minutes, bringing on Yasser for winger Hazem Emam.
Gradual revival
After the break, the quiet Shikabala emerged on the scene with a long-range effort that went inches wide of the right post, signaling Zamalek’s first genuine threat on goal on 57 minutes.
After introducing Gaafar for Mohamed Ibrahim, Hassan played his final card on 67 minutes, bringing on Zaki for the ineffectual Aoudia.
With his first real contribution, the Bulldozer was highly involved in the winning goal 11 minutes from time.
Shikabala was allowed to dash from his own half before threading an incisive pass for Zaki, who found Gaafar on the far post with a fine cross-pass, only for the later to bundle in easily from close range.
After Mahmoud Fathallah had missed the chance of doubling the lead, substitute Yasser put the game to bed with a fine solo effort seconds before the 90th minute.
The Qatari darted through the Smouha defense from his own half, taking on two defenders, before slotting home a low shot past Mohamed Al-Arabi, who should have done a lot better with the venom-less strike.
In the third minute of injury time, the revamped Shikabala used his pace to get past veteran Beshir Al-Tabie, who brought the Zamalek star down inside the area.
Shika stepped up confidently to send Al-Arabi the wrong way with his 11th of the season.