Swansea’s automatic promotion hopes from the Sky Bet Championship all but evaporated as QPR claimed a 1-0 win at the Liberty Stadium.
Lyndon Dykes drove home his 12th goal of the season in the final minute after being set up by substitute Albert Adomah.
Steve Cooper’s side now trail second-placed Watford – 1-0 winners at promoted Norwich – by nine points with three rounds of fixtures remaining, while the Hornets’ goal difference is a vastly superior 14.
Goals, or rather the lack of them, have proved Swansea’s Achilles heel with the Welsh club the lowest scorers in the top eight of the Championship and the telling touch was missing again.
Wayne Routledge came closest when his shot rebounded off a post, but mid-table QPR more than played their part in a full-blooded affair and probably deserved their late winner.
Ilias Chair twice hit the woodwork in the first half and substitute Charlie Austin, available after serving a three-match, drove narrowly wide in the closing stages.
Swansea were without top scorer Andre Ayew after the Ghana striker had suffered a hamstring injury on Saturday.
Jamal Lowe, with four goals in his last three games, was joined in attack by Routledge as Swansea sought to bounce back from a disappointing weekend draw with bottom club Wycombe.
Swansea almost took a 10th-minute lead when Lowe and Routledge combined for the first time.
Korey Smith won possession with a crunching challenge and Lowe released Routledge, who was denied by a superb covering block from Rangers skipper Yoann Barbet.
Rangers grew into a fast pace and Chair was twice denied with Chris Willock the midfield creator.
Willock’s 20th-minute cross from the right struck Chair in the midriff and the ball hit the post before Swansea scrambled clear.
Eight minutes later Willock found Chair in space and Freddie Woodman pushed the Moroccan’s effort onto the post.
Chances were coming thick and fast and Swansea were the next to be denied by the woodwork as Rob Dickie deflected Routledge’s shot onto a post.
Dykes flashed a volley wide for Rangers and Swansea twice went close twice in the final moments of the first period.
Lowe’s powerful surge down right took him past two defenders but the chance was lost as the unmarked Routledge took a heavy touch in front of goal.
Rangers goalkeeper Joe Lumley, deputising for the suspended Timothy Dieng, then produced a brilliant reflex save to deny Smith.
Willock tested Woodman with the first serious attempt after the interval, but Rangers escaped a loud home penalty appeal when Niko Hamalainen went to ground and Swansea players were convinced the ball had struck his arm.
It was to prove a decisive moment as Rangers finished on the front foot to condemn Swansea to a third defeat in four home games.