Edin Dzeko shone to give 10-man Manchester City a battling 4-3 victory at Norwich City but leaders Manchester United also won as own goals and more controversial refereeing marked the last Saturday of 2012.
In another bumper day for Premier League goals, resurgent Arsenal went fifth after a thrilling 7-3 home win over Newcastle United with contract rebel Theo Walcott scoring a hat-trick.
Manchester United maintained their seven-point advantage over City at the top after Gareth McAuley turned the ball into his own net and substitute Robin van Persie netted in a 2-0 win over West Bromwich Albion at a sodden Old Trafford.
"(Van Persie) changed the game for us," United boss Alex Ferguson told the BBC. "When I brought him and Paul Scholes on they settled the game down for us. West Brom dominated in the second half and kept pumping the ball into our box.
"We're in a good position. We're halfway there."
City striker Dzeko scored twice in the first four minutes and another of his strikes was credited as an own goal by goalkeeper Mark Bunn at Norwich where Samir Nasri's 44th-minute red card had threatened the champions' dominance.
In-form Tottenham Hotspur moved third following a 2-1 comeback win at Sunderland where an apoplectic Gareth Bale was again booked for diving while fourth-bottom Aston Villa lost their third in a row in a 3-0 home defeat by Wigan Athletic.
Paul Lambert's Villa have conceded 15 in the three games and scored none.
Arsenal opened the scoring against leaky Newcastle through Walcott - again playing as a striker - when he escaped the offside trap and finished with aplomb in the style of boyhood hero and mentor Thierry Henry, who was watching from the stands.
Demba Ba's deflected free kick just before the interval gave the visitors hope but an excellent finish from Alex Oxlade- Chamberlain and a close-range header from Lukas Podolski after Sylvain Marveaux's leveller looked to have secured the points.
Ba then grabbed another equaliser but England's Walcott expertly found the top corner after 73 minutes and substitute Olivier Giroud bagged a double late on. A persistent Walcott then took the matchball to show he is not just a winger.
Ten-man Stoke City were facing a first home loss since February but a superb late Cameron Jerome strike secured a 3-3 draw with struggling Southampton and Reading pulled themselves away from last spot with a 1-0 home win over West Ham United.
Swansea City shrugged off the injury absence of top scorer Michu to triumph 2-1 at Fulham where stand-in striker Danny Graham grabbed the opener.
Leaders United started with Van Persie on the bench and had Wayne Rooney out injured for a West Brom game that was nearly called off before kickoff because of heavy rain in Manchester.
Japan midfielder Shinji Kagawa made his comeback from injury but it was another returnee, winger Ashley Young, who provided the cross for McAuley to inadvertently score after nine minutes.
Alex Ferguson's side have been consistently shipping goals, only prevailing 4-3 over Newcastle on Wednesday thanks to a last-minute strike, but they just about held on to a clean sheet before Van Persie eased fan nerves in the last minute.
After 20 of 38 games, United have 49 points to City's 42 but Roberto Mancini will be glad his champions did not slip further behind after playing with 10 men for over a half at Norwich.
Bosnian forward Dzeko made a stunning start for City but Anthony Pilkington's 15th-minute goal and Nasri's debatable sending off left the game in the balance.
France midfielder Nasri saw red for going head-to-head with Sebastien Bassong but the dismissal seemed harsh.
Sergio Aguero then gave City breathing space after 50 minutes before a Dzeko strike came back off the post and hit Bunn on its way into the net, in between Russell Martin's brace.
"Today we showed we are there for the title," Mancini said.
Two goals in three second-half minutes helped Tottenham fight back for a deserved win at Sunderland.
"I think we started well, we went one goal down but were on top of the game really. We showed our character," match-winner Aaron Lennon said.
The hosts, who beat Manchester City 1-0 at home on Wednesday, took the lead against the run of play in the 40th minute when captain John O'Shea coolly tapped in a rare goal after Spurs had failed to deal with a free-kick into the box.
Spurs, who thumped Villa 4-0 away on Wednesday, had dominated the first half with Emmanuel Adebayor hitting the bar but they were level three minutes after the break.
Carlos Cuellar headed a corner into his own net and another unlucky deflection after 51 minutes presented Lennon with the chance to make it 2-1 before Bale's third booking for diving this term when he felt he had been fouled by Craig Gardner.
Chelsea can reclaim third spot at Everton on Sunday when bottom side Queens Park Rangers host Liverpool.
more in Sports