Louie McCarthy-Scarsbrook's early try helped Saints establish a 6-2 lead but Fouad Yaha and Lucas Albert both went over as the hosts began to get on top.
The 13-6 half-time advantage was cut thanks to winger Adam Swift's score.
But Dragons made sure of the points in emphatic fashion with two Jodie Broughton scores in the corner and tries by Morgan Escare and Tony Gigot.
Shannon McDonnell went over for Saints late on, but the French side still held a significant lead and the victory - which puts them two points behind leaders Hull FC - was assured.
Catalans Dragons coach Laurent Frayssinous:
"I'm very pleased with the two points. I've said it a lot this year but I'm not interested in the ladder [league table], if we keep improving every week, then we will keep winning games. That is our objective for the season."
"Lucas Albert is playing very well. There is still a lot of improvement in his game but if he keeps improving like he is doing then we have a very special player.
"Todd Carney settled us down out there late in the game. His game management is outstanding and you could see that out there. I was very pleased with our halves."
St Helens assistant coach Jamahl Lolesi:
"We're doing a bit tough at the moment. We're missing a few key players and the players are down on confidence a little.
"We're missing our half-back and he is a big loss for us so we're having to reshuffle our team.
"Losing Theo Fages at half-time [to a knee injury] didn't help us - that is why Keiron Cunningham isn't here at the moment. He's with Theo.
"We also lost Jonny Lomax before the game as he suffered a tight adductor and that really hurt our attack. It's just not happening for us at the moment."
Catalans Dragons: Escare, Broughton, Gigot, Richards, Yaha, Carney, Albert, Taylor, Pelissier, Casty, Stewart, Horo, Baitieri.
Replacements: Bousquet, Bosc, Maria, Navarrete.
St Helens: Lomax, Owens, Dawson, Percival, Swift, Fages, Turner, Tasi, Roby, Amor, Greenwood, Wilkin, McCarthy-Scarsbrook.
Replacements: Walmsley, Vea, Thompson, Knowles.
Referee: Chris Campbell (RFL).
Attendance: 10,789.
Catalans Dragons moved up to second in Super League table with a stylish victory over St Helens.