Dexter Blackstock's first-half goal gave QPR the points and left Charlton's promotion bid in tatters.
Their defeat and Crystal Palace's victory at Watford means Alan Pardew's side now cannot reach the play-offs.
Blackstock notched his fourth goal in five games when he hassled Paddy McCarthy off the ball and then turned inside the beleaguered defender before shooting into the corner of the net.
Charlton suffered another setback when former QPR favourite Lee Cook - on loan with the Addicks from Fulham - limped off on 29 minutes.
The winger, who was given a standing ovation by the Loftus Road crowd, has had his season wrecked by a knee injury and his fitness is still clearly a concern.
QPR continued to dominate and McCarthy almost put through his own net when Rangers youngster Angelo Balanta's attempted pass ricocheted off the centre-back and flew just over the bar.
Rangers had appeals for a penalty waved away by referee Trevor Kettle after Madjid Bougherra seemed to handle in the area, before the home side suffered an injury setback of their own with defender Fitz Hall hobbling off on 33 minutes.
But Rangers still had the upper-hand in the second half, with Blackstock heading wide from substitute Akos Buzsaky's corner and R's captain Martin Rowlands sending a rasping 30-yard free-kick just over.
Charlton substitute Chris Iwelumo missed his team's only real chance when he blazed over after Greg Halford's right-wing cross was headed back into the danger area by Darren Ambrose.
That was as good as it got for Pardew's men, and Mikele Leigertwood should have added a second goal for Rangers in stoppage-time only to fire wide.