Defending league champions, The Ospreys, sent out hope to the remainder of the PRO12 on Friday when they clipped the long term leaders back with a determined display.
Ulster were the architects of their own downfall – a first home defeat in the PRO12 since April last year.
Both sides were considerably weakened due to international call-ups and injuries, but the eighth fullhouse at Ravenhill this season was subjected to scrappy fayre.
Ulster never really threatened the visitors until the final quarter and the Welsh visitors put up a stout rearguard and then surprised with a breakaway try to give them a lead they would never relinquish.
The Irish Province remain top of the PRO12, but the gap has now been reduced to nine points and next week’s visit of the Italian side, Zebre, is a must win.
Ulster went backwards at the start, young debutant outhalf, Stuart Olding sacked like a quarter-back in American Football as the Ospreys rush defence put the home side under pressure.
On their first sortie into Welsh territory on three minutes, a canter by returning skipper, Johann Muller, saw Ospreys hands in the ruck and scrumhalf Ruan Pienaar despatched the resulting penalty from just outside the 10m line and a 3-0 after three minutes.
On nine minutes the visitors equalised with a penalty through outhalf Matthew Morgan.
A stolen lineout by the Welsh saw them press again but Morgan missed a drop goal attempt and then when Ulster crept into the opposition half another penalty on 13 minutes was sent over by Pienaar.
Mike McComish was then penalised for not releasing and Morgan levelled the scores once again with a well struck penalty.
However, centre Jonathan Spratt was pinged for not releasing and finally Ulster got some respite and Pienaar drilled the ball into touch between the Ospreys ‘22’ and 10m line.
Pienaar did a little dance on the right hand side, delivering the ruck ball shortly after and Paddy Wallace charged through the middle before Ospreys were penalised for hands in the ruck and, from in front of the posts, Pienaar tapped the ball over for a 9-6 lead after 32 minutes.
Paddy Wallace limped out three minutes into the second half, Darren Cave in to replace him, but it was the lineout which continued to give Ulster the most concern,
Three more poor set pieces during that opening 10 – two in defence, one in attack - from Ulster saw them forced into defence again, but the Ospreys indiscipline was to let them down and the home side lived off the scraps.
Morgan missed what appeared to be a drop goal attempt, expecting a penalty which never came, but a minute after that pitiful effort, he did level the scores when Ali Birch was penalised on 53 minutes.
Paul Marshall came in for an injured Peinaar as part of a triple substitution with Dan Tuohy and Niall Annett in for Muller and Rob Herring.
Ulster bombarded the Ospreys for over five minutes. Eventually the Ospreys infringed, No 8 Morgen Allen was sent to the bin and Olding converted the penalty for a 12-9 lead.
Ospreys gathered a loose ball at the side of a maul, Spratt had support and then loosehead, Ryan Bevington, showed tremendous pace to race in for a try which Morgan converted and stunned the home side.
Another Ulster barrage was halted by Ospreys and they held out to take a deserved win.
Ulster: Ricky Andrew; Andrew Trimble, Luke Marshall, Paddy Wallace, Michael Allen; Stuart Olding, Ruan Pienaar; Callum Black, Rob Herring, Tom Court; Johann Muller (capt), Lewis Stevenson; Mike McComish, Ali Birch, Robbie Diack.
Replacements: Niall Annett (Herring 57), Ricky Lutton, Andrew Warwick, Dan Tuohy (Muller 57), Neil McComb, Paul Marshall (Pienaar 57), Darren Cave (Wallace 43), Chris Cochrane (Allen 76).
Pens: Pienaar (3), Olding
Ospreys: Richard Fussell; Tom Habberfield, Tom Isaacs, Jonathan Spratt, Ben John; Matthew Morgan, Kahn Fotuali’i (Capt); Ryan Bevington, Scott Baldwin, Cai Griffiths, Ian Gough, James King, Morgan Allen, Sam Lewis, Joe Bearman
Replacements: Matthew Dwyer, Duncan Jones (Bevington 74), Dmitri Arhip, Alun Wyn Jones (Gough 48), Lloyd Peers, Arthur Ellis, Ross Jones, Jamie Murphy
Pens; Morgan (3)
Sin bin: Bevington (64-74)
Ref:Marius Mitrea (FIR)