Quick-fire tries from Ceri Sweeney and Gavin Evans midway through the second half ensured the Blues' play-off hopes stayed alive at Rodney Parade.
Ben Blair converted both tries and kicked another two penalties to see the Blues record their seventh straight away win in all competitions.
Ben Castle's try helped put Dragons 8-0 ahead early on but, after the Blues' response on the hour, James Arlidge's kicking could only salvage a bonus point for the home side.
Glasgow Warriors remain on course to finish in the top four after they beat an under-strength Leinster side 30-6 at Firhill.
Leinster, with a Heineken Cup semi-final to prepare for and a top-four spot already secured, fielded a largely second string team, and Glasgow's Bernardo Stortoni scored the game's first try on 23 minutes.
Rob Dewey came off the bench to score two tries in the final 20 minutes to add gloss to the result.