Flyhalf Paul Warwick led the way with 21 points including a try with No.8 Colm Rigney and replacement David Slemen also grabbing five-pointers.
The victory heaped further woe on the visiting Scarlets who have now lost four games in a row, despite leading this clash 16-12 at half-time.
Tries from winger Darren Daniel and Kiwi centre Regan King had put the Scarlets in control but they could not maintain their momentum after the break.
Mike Hercus gave the Welsh side the early lead with a penalty but Warwick, making his first start in four league games, landed two of his own to regain the advantage.
However it was Daniel who notched the first try of the game as he raced the length of the field later in the first half.
Hercus was unable to add the extras and things got worse for the Scarlets soon after when King was sent to the sin-bin for hands in the ruck.
Warwick took the opportunity to close the gap with his third penalty and then added another before the Scarlets rallied before the break with a penalty from Hercus and a try from King.
The hosts started the livelier after the break with scrum-half Chris Keane sparking an attack that saw Rigney cross for their first try.
Warwick converted and soon added the extras to his own try before the hour mark.
Gareth Bowen, on as a half-time replacement for Hercus, reduced the deficit to 26-19 with a short-range penalty but Connacht regained control of the game with their third try on the hour through Slemen.
Connacht continued to press in search of a try bonus but their hopes were snuffed out as replacement hooker Joe Merrigan was yellow-carded for an offence in the ruck.