Wasps raced into a 21-0 lead and their fourth try after 55 minutes gave them a 16-point advantage against the bottom team in Pool One.
James Haskell was sent off for Wasps after a late flurry of tries saw Quins trail 28-26 with 10 minutes left.
Then came James Chisholm's 80th-minute winner for Quins for their first victory in the competition this season.
One negative for Quins and England was an eye injury to full-back Mike Brown.
"Mike's got a bang on the eye and was reporting slight blurred vision, so we just wanted to make sure he's all right with that. He's gone to get a check-up," said Quins director of rugby John Kingston.
While Wasps are not mathematically out of contention, they are third in Pool One on 12 points, four points behind second-placed La Rochelle.
The French side were beaten 20-13 by Ulster in the early game, with the Irish side moving to the top of the group on 17 points after the win at the Kingspan Stadium.
Next week's final round of fixtures sees Wasps host Ulster and Harlequins travel to La Rochelle.
But a bonus-point win for Wasps at the Ricoh Arena may not be enough for them to earn them a spot as one of the best second-placed teams.