Arrows broke the deadlock after 19 minutes as a mix-up at the back allowed Lerato Lamola to slot into an empty net.
The visitors went close to hitting back in the 27th minute but Nkosingiphile Gumede produced a superb save to deny Rhulani Manzini from close range.
Arrows were dealt a blow moments later when Jabulani Shongwe was forced off with an injury.
Cavin Johnson's charges went even closer in the 30th minute when Manzini's towering header crashed against the crossbar.
AmaZulu eventually levelled matters four minutes later as Sade Ouro-Akoriko headed home Ovidy Karuru's free-kick at the far post.
That proved to be the final chance of the half as the sides went into the break level at 1-1.
Arrows restored their lead 10 minutes into the second half as Siphelele Magubane slotted into the bottom corner after a fine run.
Johnson responded by introducing Mabhuti Khenyeza for Siyabonga Nomvethe with 20 minutes remaining.
Khenyeza managed to carve out a chance in the 80th minute but he dragged his effort of the upright.
Arrows managed to bag a third goal in second-half stoppage time courtesy of a strike from Kudakwashe Mahachi, before they got a fourth goal two minutes later when Knox Mutizwa volleyed home from close range.