Stortoni, van der Merwe and Shaw all crossed for Glasgow tries, with Scotland fly-half Dan Parks kicking four penalties.
Newport Gwent Dragons number 10 Jason Tovey matched that 12-point tally before his replacement James Arlidge converted a late consolation try from winger Will Harries.
This was a setback in the Dragons' drive to reach the league's knockout stages, and they are now five points adrift of the play-off zone with three games to go.
The Glasgow pack played a big part in this Firhill success and they overcame the loss before the match of John Barclay, through illness, and his replacement James Eddie, through injury, to lead early on and for most of the first half.
By the time of Eddie's departure, the Warriors had already taken a fourth minute lead.
Graeme Morrison powered through midfield, play moved out to the left wing and when it was switched right, full-back Stortoni found a gap to slip over for the game's opening try which Parks failed to convert.
The Dragons had beaten Glasgow in the league and Europe already this season and they regrouped well as two penalties from Tovey, after 15 and 17 minutes, saw them take a one-point lead.
Glasgow, though, edged back in front soon after. A strong tackle on halfway by Max Evans bounced the ball off his knee and left winger van der Merwe hacked long and won the chase to touch down. Parks again missed the conversion.
Although Tovey kicked his third penalty, Glasgow closed the half strongly and earned a 16-9 lead as Parks kicked two penalties of his own following a prolonged period of pressure on the visitors' try-line.
Four minutes into the second half, Dragons centre Matthew Watkins was sin-binned for a high tackle on Evans and Parks kicked the resulting penalty.
Scrappy handling from both sides allowed pressure on each line but neither side could take advantage, so it was left to Parks to ease Glasgow further ahead after 64 minutes with Tovey replying in kind three minutes later.
With nine minutes remaining, Evans made a break in midfield and chipped ahead for winger Shaw to pounce for an unconverted try.
But instead of going for the bonus point try, Glasgow were put on the back foot and in the final minutes Harries scored the sole Dragons try with Arlidge closing the gap to eight points.
|Glasgow Warriors Score Card|
|DTH van der Merwe||1||5|
|Newport Gwent Dragons Score Card|