Adel Taarabt's cheeky penalty put them ahead at Loftus Road, but a reckless challenge from Bradley Orr saw the defender receive his marching orders.
Despite their numerical disadvantage, Alejandro Faurlin extended QPR's lead before Shane Long arrowed home for the Royals to offer hope for the visitors. But Tommy Smith calmed manager Neil Warnock's nerves with a third goal.
Cardiff City have the chance to go back to the top of the table on Sunday should they beat fierce rivals Swansea City.
Norwich City and Burnley shared a 2-2 draw at Carrow Road. The visitors stormed ahead thanks to Martin Paterson's brace inside 33 minutes.
Chris Martin fired the Canaries back into contention and Andrew Crofts grabbed a last-gasp equaliser to complete the comeback.
Coventry City lost out 3-2 to Leeds United at the Ricoh Arena. Jonathan Howson and Robert Snodgrass handed Leeds a healthy half-time advantage only for Lukas Jutkiewicz to halve the deficit at the start of the second period.
Richard Keogh's foul allowed Max Gradel to coolly finish from the spot soon after and, although the Sky Blues responded again through Ben Turner, it wasn't to be for Aidy Boothroyd's men.
Ipswich Town claimed a fine 2-1 win at Sheffield United thanks to first-half goals from Tamas Priskin and Gareth McAuley either side of Stephen Quinn's leveller.
Jordon Mutch's early goal put Watford in front against Nottingham Forest at Vicarage Road, but Lewis McGugan tied things up on the 20-minute mark and the game finished 1-1.
Millwall lost 2-1 at Doncaster Rovers despite taking the lead through Steve Morison.
James Hayter headed home ten minutes into the second half to bring them back into it and debutant David Healy scored a minute later to turn the tables at the Keepmoat Stadium.
Tony Mowbray's troubled start to life in the Middlesbrough hot-seat looked set to continue at the Riverside Stadium when Pablo Counago got things up and running for Crystal Palace.
Tarmo Kink roused Boro's long-suffering supporters and Patrick McCarthy's unfortunate late own goal ensured the Teessiders collected a much-needed 2-1 victory.
Fellow strugglers Bristol City were held 1-1 at home by Preston North End. They fell behind when Iain Hume found the target, but Billy Jones' own goal got the hosts back on level terms at Ashton Gate.
Sven-Goran Eriksson's Leicester City overcame Barnsley 2-0 at Oakwell. The Foxes nudged ahead through Miguel Vitor and Andy King clinched the triumph in the 85th minute.
Derby County secured a comfortable 2-0 win over Portsmouth in the day's evening kick-off.
Robbie Savage opened the scoring from the penalty spot and Paul Green's effort in the second half ensured the points belonged to the Pride Park-based outfit.