Crusaders made it seven league wins out of eight to move to within two points of Irish Premiership leaders Linfield.
Paul Heatley netted an early penalty for the Crues but home skipper Allan Jenkins scored an equaliser.
Ballymena's Matthew Tipton blazed a penalty over the bar before Jordan Owens headed the Crues 2-1 up.
Substitute Gary Thompson pulled United level but a superb goal by Gavin Whyte and a fourth from Jordan Forsythe secured the points for the visitors.
The early penalty for Crusaders was given when striker Jordan Owens was fouled by defender Johnny Taylor.
Heatley netted from the spot and then felt he should have had another penalty when he was fouled by Michael Ruddy.
Referee Ian McNabb booked Ruddy but decided the foul had taken place just outside the box.
The second penalty of the game came when Tipton was tripped in the area. The United forward had scored a hat-trick of penalties in a match earlier in the season, but on this occasion skied over from the spot.
What they said
Crusaders manager Stephen Baxter: "Our first half performance was not good enough and at half-time I told the boys what I thought of them.
"We were much more like ourselves in the second half.
"Ballymena had a right good go at us and caused us problems."
Ballymena United boss Glenn Ferguson: "The referee has given the penalty, although Jordan Owens admitted it was never a penalty.
"We regrouped and scored, but then we went and missed our own penalty. Matthew Tipton was about to pull the trigger and shoot when he was hauled down and their player was not shown a yellow card, never mind a red.
"Crusaders are a good enough side to win football matches without having big decisions go their way."