Town's six match unbeaten run came to an end at the home of the Championship leaders, with goals from Clint Hill and Heidar Helguson giving Rangers the points.
Blues were the better side in the opening 45 minutes with Jimmy Bullard pulling the strings in the midfield but the Hoops had the better of the second-half and went in front through Clint Hill on 76 minutes before Helguson wrapped up the points with a close range header.
Town made one change from the team that drew with Hull at the weekend, Bullard returning to the side in place of Andy Drury.
Danny Shittu sent a header wide from an Adel Taarabt corner in the first opening of the game, Gareth McAuley then doing well to clear the danger as Wayne Routledge looked to get on the end of Heidar Helguson's flick on.
Fitz Hall had a header wide but Town were the better team in the first-half, Grant Leadbitter sending one optimistic effort wide from 30 yards, then seeing another effort blocked by Hall after the influential Bullard had found Jason Scotland in the box.
Connor Wickham almost got on the end of a scramble in the QPR box, then powered forward down the right, Hall making the block from his shot.
McAuley headed wide from Damien Delaney's cross before Rangers enjoyed their best spell of the opening 45 minutes, Shaun Derry's strike smothered by the
Town defence inside the box after Taarabt's clever pass, then Routledge denied by more blanket Blues' covering.
Town were forced into a change just before the break with Colin Healy making way for Drury.
Rangers were close to taking the lead inside the first minute of the second-half, Helguson's sidefoot effort cleared off the line, the frontman then heading just wide after the ball cannoned around in the box.
Mark Kennedy picked up a yellow card for a foul on Ishmael Miller just before the hour, while at the other end Lee Martin tested Paddy Kenny with a low shot.
Scotland came off worse in a 50/50 challenge with Kenny as he chased a ball over the top, the Trinidad international harshly conceding a free-kick as well as a painful shoulder.
A brilliant tackle from McAuley denied Miller inside the Blues' box before Town made a second change, Tamas Priskin on for Scotland 20 minutes from time.
Marton Fulop held firm from Taarabt's shot after a flowing Rangers' move, Neil Warnock then making his first change with Miller making way for Akos Buzsaky.
The breakthrough came on 76 minutes, Taarabt swung in a corner that wasn't dealt with by Town and Hill headed in from three yards.
Wickham responded by losing Shittu down the right, his cross held by Kenny, then Fulop beat out Routledge's powerful drive before Rangers doubled their lead seven minutes from time, Helguson heading home from Hill's terrific cross.
Luca Civelli was handed the closing stages in place of Martin and the Argentine winger almost capitalised on a poor clearance before Bradley Orr hacked clear.
Matthew Connolly replaced Shittu for the three minutes of added on time, Priskin then denied by Kenny as Rangers saw out the game and maintained their five point lead at the top.
QPR: Kenny, Orr, Hall, Shittu (Connolly 90), Hill, Routledge, Faurlin, Taarabt, Derry, Miller (Buzsaky 75), Helguson. Subs not used: Cerny, Gorkss, Hulse, Moen, Chimbonda.
Town: Fulop, Edwards, McAuley, Delaney, Kennedy, Martin (Civelli 84), Healy (Drury 40), Bullard, Leadbitter, Wickham, Scotland (Priskin 70). Subs not used: Lee-Barrett, Peters, Smith, O'Dea. Booked: Kennedy.