Zaki, who put in an impressive display, opened the scoring on 74 minutes, and newly-signed striker Mosaad doubled the lead three minutes later.
The White Knights were quite coherent, comparing with their previous friendly that saw them slump to a 3-0 loss to French Ligue 1 outfit Sochaux.
Zamalek coach Michel Decastel played a host of newcomers in the game, making nine substitutions in the second period.
The Cairo team carved out several clear-cut opportunities in the first half, but none were converted.
The fit-again Zaki came close to hitting an opener on three occasions, but failed to break the deadlock before the interval.
Ahmed Gafaar and Shikabala could have opened the scoring as well, but each squandered a chance.
Ukrainian side Shakhtar mainly depended in their attacks on long-range shots and crosses from both flanks, but to no avail.
Zamalek's victory could have slipped away if it wasn't for the dexterity of their goalie Mohammed Abdul-Monsef, who denied two golden opportunities.
Three minutes from the hour-mark, the towering keeper rose to the challenge in a one-on-one chance.
On 65 minutes, he skillfully parried away a powerful shot to keep a clean sheet.
Former Wigan Athletic star Zaki put Zamalek ahead with a follow-up effort, and Mosaad capitalized on a defensive blunder to add the second.
Mosaad was about to notch a third nine minutes from time, but his fierce drive went over the bar.