In a frantic final play, Ben Barba fielded a kick and bolted 60m to touch down as the siren sounded, only for the referee to indicate a no-try when sending the decision upstairs.
On review it was determined Bulldogs forward Frank Pritchard had hit Dragons fullback Josh Dugan with a tackle, sending play way back up-field for Soward to have a shot at an equaliser.
The 35m penalty kick sailed wide and the Bulldogs held on for their fifth win in six games.
Romelo put Lafai in space in the 25th minute for the 22-year-old to score under the posts despite being reviewed for obstruction.
And then five minutes later, Romelo's cross-field kick was skilfully tapped back by winger Drury Low for Lafai to dive over for his second four-pointer.
With Trent Hodkinson converting both tries to build a handy 12-0 advantage after an opening quarter that provided few clear-cut chances, the Dragons hit back with a rare eight-point try just three minutes before halftime.
Canterbury backrower Josh Jackson lost possession close to his line and Dragons centre Matt Prior instinctively shovelled the ball between his legs to Jamie Soward, who raced 25m to score in the corner.
Ben Barba's sliding knees-first late tackle on the tryscorer was put on report and Soward gleefully slotted both the sideline attempt and the subsequent shot in front.
It was St George Illawarra's first try in over two hours of action after last round's 19-0 loss to Penrith.
Sam Perrett extended the Bulldogs' halftime lead of 12-8 when he crossed in the corner seven minutes after the break.
Along with Barba, Dragons interchange forward Leeson Ah Mau was put on report for a high shot on Bulldogs prop Aidan Tolman while fellow Canterbury big man Sam Kasiano may be in strife for a potential chicken wing tackle in the 42nd minute.
The match kicked off later than usual, which was influenced by the TV broadcasters only having one Friday night game to show in an Origin-affected four-match round 12.
And Bulldogs captain Michael Ennis believes the arm-wrestle was partly due to the start close to 8pm (AEST).
"It was slippery in patches," said Ennis.
"It's just amazing how much that extra half an hour delay makes with the dew and the slipperiness of the surface.
"But it was alright. It was the same for both sides. It was just a tough slog."
Dragons coach Steve Price bemoaned his side's ill-discipline that contributed to their fifth loss from their last six games.
"We gave ourselves a chance," said Price.
"There were a lot of good individual performances ... but we are coming up with too many crucial errors and penalties in vital situations."
- AAP