West Ham hit back from two goals down to win 3-2 at Everton to stay hot on the heels of Manchester City in the race for fourth spot in the Premier League table.
The Toffees took a 13th-minute lead through Romelu Lukaku, but the home side were soon reduced to 10 men when Kevin Mirallas was sent off in the 34th minute for a second yellow card.
Aaron Lennon scored a fine individual goal on 56 minutes to seemingly put the hosts in control, before Lukaku had a 71st-minute penalty saved.
Michail Antonio reduced the deficit on 78 minutes left and just three minutes later substitute Diafra Sakho headed in an equaliser, before Dimitri Payet won it with a last-minute goal.
Manchester City closed to within two points of the third-placed Gunners when they beat bottom club Aston Villa 4-0 at the Etihad Stadium.
City hit Villa with two goals early in the second half through Yaya Toure on 48 minutes and Sergio Aguero quickly scored another just two minutes later before the Argentine forward added a third on the hour mark.
Raheem Sterling made it 4-0 after 66 minutes, with Agero also hitting the woodwork from the penalty spot on 73 minutes.
At the other end of the table, Bournemouth increased the pressure on Newcastle manager Steve McClaren with a 3-1 win at St James' Park.
The Cherries, who have moved clear of the relegation zone, took the lead in the 28th minute when Josh King's cross was deflected into his own net by Newcastle defender Steven Taylor.
King made it 2-0 in the 70th minute, as the boos rang out from the home support.
Ayoze Perez's goal with 10 minutes left gave Newcastle hope before Charlie Daniels made sure of victory with a third in stoppage time to leave the home side deep in relegation trouble.
Chelsea continued their recovery under Guus Hiddink, but were held to a 1-1 home draw by Stoke.
Bertrand Traore fired the hosts into the lead on 39 minutes, but just when it seemed the Blues were closing out another victory, Mame Biram Diouf headed in an equaliser with five minutes left.
Swansea beat struggling Norwich 1-0 at the Liberty Stadium with a goal on 61 minutes from midfielder Gylfi Sigurdsson.
Sunderland looked to have boosted their own survival hopes with a late strike from Jermain Defoe (84) at Southampton.
However the Saints, who had Jose Fonte sent off on 79 minutes, snatched a point in stoppage-time through Virgil van Dijk.