Portadown returned to the top of the Premiership as they won at Seaview despite conceding two late goals.
Michael Gault put the Ports ahead on seven as Crusaders's woes continued following the midweek defeat by Bangor.
Mark McAllister doubled the Ports lead on 60 minutes and Darren Murray then made it 3-0 five minutes later.
But goals from BJ Burns and Jordan Owens set up a nervy finish and Colin Coates, Diarmuid O'Carroll and Paul Heatley all had chances to level.
Burns's deflected effort beat David Miskelly in the 79th minute and the most unlikely of comebacks appeared on when Owens's shot was diverted past the Ports keeper a minute later.
As the Ports defence started to look decidedly jittery, Coates headed a glorious chance wide before O'Carroll saw a point-blank effort brilliantly blocked by Gary Breen.
Then deep in injury-time, Heatley looked to have snatched a point for the Crues but Miskelly produced a brilliant save to push the shot away to safety.
Crusaders manager Stephen Baxter opted to play three at the back as Emmet Friars returned to the defence but the tactical change backfired for the home side in the first half.
Gault was left totally unmarked in the seventh minute as he headed Murray's corner past Sean O'Neill from close range.
Crusaders tried to rally before the break and Owens should have levelled on 36 but directed his point-blank header straight at Miskelly who stood firm to divert the ball out for a corner.
Heatley wasted a chance to equalise on the stroke of half-time when he fired over and the importance of those misses was rammed home 15 minutes after the resumption as McAllister brushed off Davy Magowan before firing a superb shot past O'Neill.
As Crusaders appeared to have capitulated, Mackle's brilliant charge set up Murray to round O'Neill and stroke into the empty net on 65.
Peter McMahon should have made it 4-0 to the Ports but somehow contrived to fire wide and the miss very nearly came back to haunt Ronnie McFall's side.
Crusaders looked a much more effective outfit when they reverted to playing four at the back in the second half and Portadown were left mightily relieved at the finish as they held on to take their sixth straight Premiership win.
With previous leaders Cliftonville losing at Coleraine, Portadown's victory puts them two points clear of Linfield at the top.