Bottom side Ballinamallard United claimed their second scalp in as many games as they held Linfield to a 2-2 draw at Ferney Park to keep their survival hopes alive.
A goalless first half was beaten by a thrilling second half that saw the Mallards take the lead in the 57th minute when a Ryan Curran glancing header beat Alex Moore, but Mark Stafford equalised for the Blues with a header of his own on 71 minutes.
David Healy's men then took the lead when a handball decision handed them a penalty, which Andy Waterworth coolly stroked home, and when Joshua McIlwaine was sent off just 27 seconds after coming on as a sub, it looked like the game was safe.
But Ballinamallard wouldn't lie down and they got a share of the spoils deep into injury time when Sean Noble was on hand to put the ball into the net.
Cliftonville 3-0 Ards
Jay Donnelly's hat-trick at Solitude handed Cliftonville a straightforward 3-0 win over Ards that keeps them in the hunt for third place.
His first came after just 17 minutes, the striker sticking out a leg to poke home Chris Curran's curled free kick into the box, and that was good enough for the half time lead.
Donnelly then added his second early in the second half to double the Reds' advantage, before wrapping up his treble and capping an easy night at the office for Barry Gray's men near the end.
Coleraine 3-2 Carrick Rangers
Coleraine will be top of the table at the weekend after they staved off a spirited Carrick Rangers test at the Coleraine Showgrounds to win 3-2.
The Bannsiders even missed a penalty, Aaron Burns' effort parried away by Harry Doherty, and that proved costly at the time as Darren Henderson gave the visitors a first half lead when he prodded home a short pass back.
It took the hosts two minutes to equalise after the restart, Josh Carson tucking home a Brad Lyons cutback before Lyons set up Burns for their second, the midfielder this time making no mistake.
Carson then added his second, rifling the ball home from an Aaron Traynor cross, and that proved to be vital as Michael Smith curled home with five minutes to go for Carrick, however the now league leaders held on for the win.
Dungannon Swifts 3-2 Glenavon
An injury time header for Seanan Clucas heaped more misery on Glenavon as they suffered a last-gasp 3-2 defeat at Stangmore Park against Dungannon Swifts.
It was the Swifts who took the lead, Daniel Hughes slotting it through the legs of the onrushing Jonathan Tuffey in the 28th minute and, but for Andy McGrory's intervention on the line, Dougie Wilson's header would have made it two.
The second did follow in the second half, however, as Hughes netted his second from the penalty spot when Joel Cooper tugged back Kris Lowe in the box.
But Glenavon staged an excellent comeback, Robbie Norton pulling one back with a low 20-yard strike before Sammy Clingan crashed a free-kick off the underside of the bar and in for the equaliser.
It was to be the Swifts' night, however, and Clucas was the one who rose highest in injury time and his looped header evaded Tuffey and nestled in the back of the goal.
Glentoran 1-2 Ballymena United
Kofi Balmer's second half rocket has put Ballymena United in the driving seat for the final top-half place after they stole a 2-1 win against Glentoran at The Oval.
The visitors had taken the lead in the 17th minute thanks to striker Cathair Friel's smart finish, and they were good money for their lead at the break, however red-hot striker Curtis Allen equalised in the 69th minute for the hosts.
But 17-year old Balmer popped up with a wonderful strike from the edge of the box near the end to seal the three points for David Jeffrey's side, meaning a win against Ballinamallard United on Monday night will see them on the right side of next week's split.
Glentoran, who had Willie Garrett sent off in injury time, will now have to wait to discover their fate.