In a game played in blustery conditions as a result of Storm Dave in Belfast, early pressure from Ulster told as after numerous phases, the returning Cormac Izuchukwu crashed over for the opening try on four minutes.
Ospreys responded well to going behind and, playing with the wind, they got their first try on nine minutes as Morgan-Williams jinked his way over after a patient move from the Welsh side.
Mark Jones’ side then went ahead on 20 minutes with Morgan-Williams again at the heart of it as he peeled off a driving maul and fed Kasende, who evaded the challenge of Stuart McCloskey and crossed.
Edwards stretched their advantage to 10 points with a penalty before Ulster hit back with a second try before the break.
They eventually broke Ospreys’ resolve on 34 minutes as Dave McCann grounded the ball on the line, powering over after a quick tap and go penalty.
Ulster started well in the second half and were rewarded as Stockdale finished off a free-flowing move to race over and restore the home side’s advantage.
They produced some super last-ditch defending to hold up Jac Morgan on the line before Timoney then gave them some breathing space with a fourth try on 56 minutes.
McCloskey fed the ball to Timoney out on the left and he sold a sweet dummy before darting to the corner.
Things went from bad to worse for Ospreys as captain Morgan was shown a yellow card for a high tackle in the build-up to that try.
They managed not to concede any more points while Morgan was off the pitch and instead cut the gap to four points with 12 minutes remaining courtesy of a penalty try.
It was awarded when Luke Morgan was taken out by a high tackle from Jack Murphy as he looked to score in the right corner, with the Ulster fly-half sent to the sin bin.
Ospreys continued to battle and thought they had stolen the victory on 78 minutes when Owen Watkin caught Ulster on the break and fed Kieran Hardy, who dotted down.
The try was eventually chalked off following a review from the television match official (TMO) which spotted a forward pass in the build-up as Ulster clung on for victory.
Ulster: McIlroy; Kok, Hume, McCloskey, Stockdale; Flannery, Doak: Bell, Herring, O’Toole; Henderson, Izuchukwu; McCann, Timoney, Augustus.
Replacements: T Stewart, Crean, Wilson, Irvine, B Ward, McKee, Murphy, Z Ward.
Ospreys: Walsh; Kasende, Watkin, K Williams, L Morgan; Edwards, R Morgan-Williams; G Thomas, Parry, Henry, R Davies, Smith, Sutton, J Morgan (capt), M Morris.
Replacements: Daniel, S Thomas, Botha, Fender, Deaves, Hardy, Boshoff, Hopkins.
Referee: Anthony Woodthorpe (England)

