Manchester City lost ground on leaders Liverpool after a shock defeat to Crystal Palace while Chelsea also lost at home to Leicester in a day of upsets.
A wonder strike from Andros Townsend was the highlight of a memorable victory for Crystal Palace as champions Manchester City lost a home game for just the second time in 41 league games.
Ilkay Gundogan’s header looked to be just the start for a dominant Man City at the Etihad, but the expected landslide didn’t come as Jeffrey Schlupp levelled before Townsend scored possibly the goal of the season just two minutes later.
Luka Milivojevic then put Palace into dreamland with a third from the penalty spot on 51 minutes to really set alarm bells ringing among City fans.
Substitute Kevin De Bruyne pulled one back five minutes from time but Pep Guardiola’s side couldn’t find an equaliser as they remained four points behind Liverpool in the Premier League table.
Betting update...Sky Bet have now shortened Liverpool's price to win the Premier League to 11/10, just behind Man City who remain favourites at 10/11. Click here for the full market.
Jamie Vardy scored the only goal of the game as Leicester City stunned Chelsea at Stamford Bridge as the hosts lost more ground on the league leaders.
Vardy’s sixth of the season came on 51 minutes and, despite a wave of late pressure from Maurizio Sarri’s side they were unable to find a late reply.
It was the perfect response from Claude Puel’s side after the Foxes boss had been the subject of talk in Saturday’s papers about his future at the club.
Bournemouth had suffered seven defeats in eight before grabbing some Christmas cheer with a 2-0 victory over south coast rivals Brighton courtesy of a brace from David Brooks.
Brooks bagged in the 21 and 77th minutes, the second coming just after Lewis Dunk had been sent off for getting two yellow cards.
The Cherries will spend Christmas in eighth place in the Premier League, which they’ll view as satisfactory given their poor recent run.
The Ralph Hasenhuttl revival continued for Southampton as they followed up victory over Arsenal by seeing off fellow strugglers Huddersfield, with the 3-1 success marking the first time since April 2017 that Saints have won back-to-back Premier League games as they pulled three points clear of the bottom three.
The impressive Nathan Redmond opened the scoring in the 15th minute and Danny Ings scored his eighth of the season from the penalty spot three minutes before half-time.
Philip Billing pulled one back for Huddersfield in the 58th minute - just the fourth goal the Terriers have scored at home in the league this season - but 18-year-old Michael Obafemi's first senior goal condemned them to a fifth straight defeat.
West Ham's hopes of claiming a fifth straight win ended when Gerard Deulofeu sealed a 2-0 Watford victory after Troy Deeney had scored a first half penalty.
The Hornets moved up into sixth place with their eighth win of the season and just their second victory since the start of November.
Rafael Benitez was left a frustrated figure as Newcastle were held to a drab goalless Premier League draw by bottom-of-the-table Fulham.
The Magpies did not manage a single shot on target to leave the Spaniard, who admitted in the run-up to the game that he loves English sitcoms, stony-faced ahead of an intensely difficult Boxing Day trip to face leaders Liverpool.
Opposite number Claudio Ranieri may have been marginally happier after watching his side keep a first top-flight clean sheet, but they too failed to trouble Magpies goalkeeper Martin Dubravka to any great extent in an awful game in front of a crowd of 51,237 at St James' Park.