Pavel Pogrebnyak's early goal earned Fulham the west London bragging rights as indiscipline once again cost struggling QPR in the Barclays Premier League clash at Loftus Road.
The clubs' once-amicable relationship is far more tense nowadays due in no small part to Bobby Zamora's defection to join former Whites manager Mark Hughes at Loftus Road.
The now-QPR manager suggested Fulham lacked ambition following his departure last summer and was reminded of his comments by the raucous visiting support when Pogrebnyak rounded goalkeeper Paddy Kenny to break the deadlock in the seventh minute.
QPR's hopes of exacting revenge for their 6-0 defeat in the reverse fixture were made remote in the 33rd minute when debutant Samba Diakite received his marching orders for a second bookable offence.
It was the third home league match out of four a Rangers player was dismissed in the first period and they were made to pay as their poor form continued.
QPR have now only won once in 14 league games as their almost 29-year winless streak against Fulham continued to the delight of 3,115 visiting supporters.
After a bright start from the Rs, Fulham found the back of the net in the third minute.
Mousa Dembele, playing again in an unusual central midfield role, put through John Arne Riise on the left, and his cross was nodded home off the underside of the bar by Johnson.
The effort was ruled out for offside but the visiting support did not have long to wait to celebrate a goal as Dembele once again proved the catalyst.
The Belgium international's exquisite back heel played through Pogrebnyak, who showed superb composure to round Kenny and slot home.
The goal was the recent addition's second in as many games, although it was tempered somewhat by his booking for celebrating with the Fulham fans.
QPR looked shell-shocked as they saw Clint Dempsey fire wide, before Kenny stopped the American prodding home by grabbing hold of a Pogrebnyak cross.
The Rs were struggling to get a foothold in the game and their frustrations saw Diakite pick up a booking for a late challenge on Bryan Ruiz in the 20th minute.
QPR were only fleetingly impressing and somehow failed to capitalise on defensive confusion in the 26th minute.
Mark Schwarzer parried a 20-yard Shaun Wright-Phillips effort into the path of Zamora, whose goalbound attempt was clawed away by the Fulham goalkeeper before Adel Taarabt inexplicably fired wide.
Perhaps fortunately for the Morocco international, the linesman had already raised his flag for offside.
Taarabt, though, was looking QPR's most dangerous player and fired inches wide from 20 yards, before the Cottagers returned to the attack.
Nedum Onuoha was forced to put the ball out for a corner as Dempsey threatened, before Kenny palmed away a fierce Danny Murphy effort.
The home side's afternoon was made all the more difficult in the 33rd minute when Diakite became the latest Rangers player to earn a first-half red card.
QPR had been reduced to 10 men in two of their previous three home fixtures and the Malian followed suit, receiving his second booking of the afternoon for another foul on Ruiz.
Barton fired over as half-time approached but Fulham returned to the attack after the break, with only pressure from Onuoha preventing Ruiz getting a shot away inside the opening minute.
Taarabt rained in shots from all angles as he attempted to force an equaliser, before Rangers captain Barton saw an effort deflected behind and Dembele picked up a booking.
The second period was a much calmer affair as Martin Jol's side welcomed the hosts on, which almost backfired when Mackie latched on to a Taarabt ball to fire just wide.
Left-back Riise was booked for a foul in the build-up and then saw opposing number Taiwo limp off and replaced by Armand Traore.
Fulham made sweeping changes in a bid to sure things up heading into the final 10 minutes, but were fortunate not to concede in the 83rd minute when Wright-Phillips somehow curled wide when one-on-one with Schwarzer.
Substitute Chris Baird was booked for clipping Zamora's ankles as the clock wound down before fellow replacement Dickson Etuhu ran through the middle to shoot just wide in the 90th minute.
Fulham continued to press in stoppage-time and Dembele saw the last shot of the afternoon blocked by Onuoha after he had neatly turned the defender.