Joe Gormley fired a left-foot shot into the bottom right hand corner of the net to give Cliftonville victory.
Tony Kane, Jordan Baker and Jonny Taylor had chances for Ballymena in the first half, while Dwayne Nelson saved from Liam Boyce and Ciaran Caldwell.
Diarmuid O'Carroll was denied by Nelson after the break
Substitute Gormley scored in the 82nd minute, and also shot against the underside of the bar and struck a free-kick just wide in the closing moments.
Caldwell fired narrowly over the bar and also had a claim for a penalty turned down by referee Mark Courtney.
Former Cliftonville player Kane had a good early chance but his 35-yard free-kick was touched over the bar by John Connolly.
A short Barry Holland backpass allowed Jordan Baker through on goal but he fired wide when he should have done better.
Boyce saw his weak shot comfortably saved by Nelson and the Ballymena goalkeeper then pushed Caldwell's shot past the post.
Before the break, Taylor's glancing header hit the post and Allan Jenkins couldn't convert the rebound.
After half-time Nelson saved O'Carroll's close range shot while, at the other end, James Costello had a drive palmed away by Connolly.
Kane brought down Caldwell in the area but referee Mark Courtnet waved away appeals for a penalty.
Gormley made his decisive intervention just minutes after coming on as a substitute.