Tries from skipper Rob McCusker and rookie wing Chris Knight in the space of five minutes in the final quarter proved decisive in a closely-fought contest.
Dragons outside-half Kris Burton did get a try back but it was too late for the visitors.
Both sides fielded mixed sides. Dragons coach Lyn Jones made 13 changes and gave 17-year-old lock Joe Davies is first-team debut.
The Scarlets also gave a first start to wing Chris Knight, but rested forwards with Phil John, Josh Turnbull, George Earle, Jake Ball and Samson Lee.
The Scarlets responded with a break from openside flanker Dan Thomas, who broke into the 22 and from the subsequent line-out the home side won a penalty.
Fly-half Aled Davies kicked that from the 22 to give the Scarlets a 3-0 lead on nine minutes.
Burton’s wayward start continued as he missed a 40 metre penalty attempt on 16 minutes.
It was a missed opportunity as three minutes later Davies doubled his side’s lead with a penalty in front of the posts after the Dragons had been caught offside.
The Scarlets looked as if they would increase that lead but were penalised as they tried to set up a drive towards the line.
Burton also missed a second penalty attempt on the half-hour mark – his kick falling well short of the target.
Burton’s wayward evening seemed to rub off on Davies, who missed with his third and fourth penalty shots of the half.
After trailing 6-0 at the break Dragons went through some good phase play at the start of the second half and earned a penalty from a scrum. It saw Burton break his duck with his attempt from the 22.
The Dragons made good progress into Scarlets’ 22 only to be penalised for holding on.
On 57 minutes English referee Matthew Carley showed a yellow card to Dragons flanker Scott Matthews for killing ball inside his 22. That immediately had a telling effect on the game.
With the extra man Scarlets scored two tries in five minutes. On the hour mark they scored in the right corner through Knight, whose run down the right created a score for McCusker.
But Scarlets’ delight was short-lived as Burton went over under the posts with 11 minutes remaining and Rhys Jones added a penalty to reduce the deficit to five points.
That was before Josh Lewis kicked a penalty five minutes from time, although the Scarlets did have Gareth Maule sent to the sin bin before the end.