They outscored their hosts by three tries to two, but the Ospreys had to settle for a losing bonus point after an intense and physical battle at Parc y Scarlets.
The Ospreys enjoyed all the early pressure, probing repeatedly inside the Scarlets half, but it was the hosts who drew first blood with 17 minutes played.
There seemed little danger when the ball was spilt forward on the Ospreys 10m line but the Scarlets broke at pace, spreading the ball from right to left, Kieron Fonotia making 30m up the flank before Johnny McNicholl went over for the score, converted by Leigh Halfpenny.
Despite that score, the pattern of the game remained the same with the Ospreys controlling territory and possession but unable to find the key to unlock the defence.
They went close in the 27th minute, working space for Luke Morgan on the left, but the winger was penalised after he found himself isolated when brought down a metre short.
However, just a minute or later the Ospreys got the reward their early dominance deserved, working space for Cory Allen to hit the line at full pelt, his angle beating Fonotia on the 22m line to give him a simple run in.
Davies added the extras and it got better for the Ospreys when they took the lead with 33 minutes played. Allen was involved again, feeding North, and although the winger had plenty to do he powered over the line to score.
The decision was referred upstairs to check the grounding, Tom Prydie doing excellent work to try and prevent North getting it down but after a lengthy consultation try number four of the season for the former Scarlet was confirmed.
The conversion from the right touchline was off target, before an Ospreys offside with the clock dead handed Halfpenny a simple three pointer to reduce the deficit to two points at the interval.
HALF-TIME: SCARLETS 10-12 OSPREYS
It was the Scarlets who came racing out of the blocks and they thought they’d scored their second try seven minutes after the restart, using the driving maul as a platform to attack from and it was Hadleigh Parkes who barreled his way over under the posts.
However, a TMO referral confirmed that the ball was knocked forward in the build-up and the try was disallowed.
The hosts did snatch back the lead on 50 minutes, Halfpenny with another three points after Nicky Smith was penalised at the scrum.
The momentum was with the Scarlets as wave after wave of pressure hit the black wall of Ospreys defenders, but time again they were repelled. The home crowd were calling for a penalty try and yellow card after a knock-on by Morgan which resulted in only a scrum, but the seemingly inevitable score eventually came with 56 minutes on the clock, the Scarlets pulling the defence out of shape to create a gap for Patchell to ease his way through.
Halfpenny converted and the Ospreys found themselves eight adrift with a little over 20 minutes to play.
It was crucial that the Ospreys were next to register on the scoreboard and they there were, just five minutes later. Watkin broke, Justin Tipuric with the carry and offload, releasing Morgan up the left to race home, finishing well in the corner. Davies again missed the target to leave the score 20-17.
It was on a knife edge and back came the Scarlets, putting the Ospreys under huge pressure in and around the 22 but time and again the visitors were able to frustrate them.
However much they tried though the Ospreys were unable to get back into enemy territory, the defeat only a second loss in six games this season.