Zeb Luisi and Rob Purdham marked their returns from injury with the game's first two tries before Sean Rudder pulled one back for the visitors.
Luke Dorn added a third for Quins right on half-time before the home side cemented their lead after the break.
Dorn's intercept try and a touchdown from Danny Williams were the pick of the scores after the interval.
Quins coach Tony Rea: "It was a big win for us, but we thoroughly deserved it.
"Our half-backs Luke Dorn and Thomas Leuluai gave a real masterclass with good control of the football and they set the win up for us.
"The performances in the last three weeks have matured outstandingly and defensively we've come a long way.
"That doesn't just happen though - it comes from hard work, practice and commitment and we've had plenty of that."
Dragons coach Mick Potter: "We've played a lot better than that in recent weeks and we never executed the basics well.
"But the players expect a little bit better from themselves and that's good to see as a coach.
"We dropped a few balls that we could have held on to and we were punished. We gave Quins too much of the football and consequently they scored a lot of points. And when we had the ball in their territory we didn't use it well enough.
"But the guys never gave up - they moved the ball well and the late tries are a couple of ticks in their box - we never threw the towel in."
Harlequins: McLinden, Gafa, Lucky Luisi, Smith, Bradley-Qalilawa, Dorn, Leuluai, Heckenberg, Randall, Tookey, Purdham, Hopkins, Williams.
Replacements: Mills, Budworth, Weisner, McCarthy-Scarsbrook.
Catalans Dragons: Guigue, Murphy, Touxagas, Hughes, Verges, Rudder, Dobson, Beattie, Rinaldi, Guisset, Fakir, Mounis, Wilson.
Replacements: Jampy, Berthezene, Fellous, Casty.
Att: 3,472
Referee: S Ganson (St Helens).