Championship leaders QPR suffered a third defeat in five games as they went down 1-0 at Norwich.
Russell Martin fired City ahead in the tenth minute - his first goal at Carrow Road - to secure a fifth win in six games in front of a crowd of more than 26,000. QPR had defender Matthew Connolly sent off after 51 minutes for a professional foul on City captain Grant Holt.
Darren Pratley scored the only goal of the game as Swansea edged a tight affair against Reading 1-0 to climb up into second place and hand manager Brendan Rodgers a league double over his former employers.
Jason Puncheon struck a sparkling hat-trick as Millwall piled on the misery for their South London rivals Crystal Palace with a 3-0 victory. Palace announced after the game that manager George Burley had been sacked.
Lions boss Kenny Jackett has yet to decide whether to make Puncheon's loan deal from Southampton a permanent transfer this month, but the winger is certainly putting forward a strong case. He stunned Palace with an early opener and then struck twice more in the second half to leave Millwall on the coat tails of the play-off pack.
Watford continued their fine form and moved into the play-off places after a dominant display and a 3-0 victory over a depleted Portsmouth side. Left-back Andrew Taylor`s first career goal put the Hornets on course for victory before strike pairing Marvin Sordell and Danny Graham scored in the second half.
Bristol City won the honours in the Severnside derby with a 3-0 win at Ashton Gate as Cardiff's Championship promotion bid continued to stutter. Brett Pitman, Lee Johnson and Jamal Campbell-Ryce got the goals.
Luciano Becchio struck a superb stoppage-time volley to secure a 1-1 draw against Middlesbrough that preserves Leeds' unbeaten run and maintains their promotion challenge.
Becchio kept his composure after the ball had rebounded to him off and extended Leeds' unbeaten run to 12 matches, but it was rough justice on the visitors, who looked to be heading for back-to-back victories after David Wheater's towering header had given them a first-half lead they rarely looked like surrendering.
Both Burnley and Sheffield United have waved goodbye to their managers recently but it was the Clarets who came out with a 4-2 win at Turf Moor.
Micky Adams saw the Blades take the lead through Mark Yeates, but Burnley caretaker manager Stuart Gray was left celebrating after Chris Eagles, Chris Iwelumo and Jay Rodriguez turned it around. Ched Evans had made it 3-2 from the penalty spot before Steven Thompson put the result beyond reach.
Darius Vassell found the cure for Leicester's travel sickness with the only goal in a 1-0 win to sink Hull. The hosts endured a miserable afternoon which was compounded by a red card for defender Liam Rosenior
Nottingham Forest extended their fine unbeaten run at the City Ground to 31 league games after coming from two goals down to draw 2-2 with Barnsley.
Matthew Hill gave Barnsley the lead with 17 minutes gone and former Forest striker Andy Gray head home for 2-0, but Lewis McGugan pulled one back from the penalty spot before substitute Nathan Tyson scrambled home an equaliser 10 minutes from time.
Relegation-threatened Preston endured a disappointing start to life after Darren Ferguson as they fell to a 2-1 defeat at home to Derby, while Coventry survived a Marlon King red card to draw 1-1 at home to Ipswich.