Welsh were 14-9 ahead going into the final quarter but the Dragons dominated the remainder of the contest, scoring 33 unanswered points.
Dragons fly-half Steffan Jones booted 27 points as his side's second win in the competition allowed them to move out of bottom place in their pool.
The visitors included new signing Argentinian international centre Gonzalo Tiesi in their starting line-up with Gavin Henson returning on the bench after a three month lay-off with a calf problem.
Gordon Ross, who was rested, was their major absentee.
Dragons chose to rest their captain Lewis Evans and were also without influential backs Jonathan Evans and Adam Hughes through injury, but flanker Darren Waters returned from a six-month absence following a knee ligament injury.
The game began before one of the lowest ever LV= Cup crowds, with barely 500 in the ground.
Dragons had the first chance for points but a long-distance penalty attempt from Jones rebounded back off a post. Welsh too had an early chance but Alex Davies was short with his penalty.
Jones missed another penalty before Welsh were dealt a blow when flanker Ryan Newman left the field with a leg injury.
After 18 minutes, Dragons took the lead when Jones was finally on target with a touchline penalty but that was soon nullified by one from Ryan Davis.
Davis and Jones exchanged penalties before Alex Davies was restored to long-range kicking duties but again he was unsuccessful.
The hosts produced the only real attacking movement of the half when clever passing between half-backs Davis and Davies sent Joe Ajuwa away down the flank.
The wing was hauled down just short but Dragons conceded a penalty for Davis to give London Welsh a 9-6 lead at the end of a desperately poor first half.
Dragons made a bright start to the second half and were level within three minutes of the restart when Jones kicked his third penalty.
After 51 minutes Henson was introduced to a few cheers from the sparse crowd and almost immediately saw his side take the lead when replacement flanker Ed Williamson drove over from a five-metre line-out for the try which Henson was unable to convert.
Jones kicked three further penalties in quick succession to leave the visitors 18-14 ahead with 15 minutes remaining.
Those successes buoyed the Dragons and allowed them to dominate the final period, Hallam Amos skilfully avoiding a weak tackle from JAjuwa for a try which was converted by Jones.
London Welsh fell away badly in the closing moments, conceding tries to Ieuan Jones and Jevon Groves, both converted by Jones, who completed the scoring with a last-minute penalty.