The Scarlets led their closest rivals by five points before last night's game, but three tries, plus 19 points from the boot of Jonathan Spratt saw last season's losing finalists home.
They led 21-10 at half time thanks to tries from Alex Wilkins and Andrew Gwynne, whilst a second half effort from wing Nicky Roberts kept the Ospreys on course for a place in the final.
Full back Martin Thomas, centre Andrew Taffetsauffer, hooker Ken Owens and Daniel George all crossed for the Scarlets with Rhys Priestland adding a conversion and penalty.
Ospreys high performance manager Dai Arthur said, "We were without a few internationals, but the depth of our passion and performance tonight was immense.
"They are a very good footballing side, but we have come out on top and if we can gain one more win from our final two games, I think that will be enough for a place in the final."