Leinster dominanated up front and even managed to hold on after being reduced to 14 men after 64 minutes when Guy Easterby was sinbinned.
Felipe Contepomi led the way for Leinster with four penalties and a conversion while Gordon D’Arcy and Girvan Dempsey claimed a try apiece.
Ulster, with David Humphreys scoring 11 points with the boot, did well to lead 13-9 at half-time, but never recovered from Leinster’s solid start to the second half.
Leinster began well and led 6-0 after 16 minutes thanks to two Contepomi penalties, the first of which was a monster effort from 53 metres which bounced off the crossbar.
Ulster then found some class after David Trimble beat his man and set up some quick ball which saw Tommy Bowe glide over. Humphreys added the superb touchline conversion and Ulster led 7-6, which soon grew to 10-6 after a Humphreys’ penalty.
Contepomi narrowed Ulster’s lead to a point on the half hour before seven minutes from the end of normal time Humphreys made it 13-9 at the break to the home side with his second penalty.
Leinster immediately hit back on the resumption with a superb try from D’Arcy. This was added to by Dempsey, after 53 minutes, and his score was converted by Contepomi to give Leinster a 21-13 advantage.
Humphreys clawed back three points with a penalty after Bowe had dropped a cross kick when over the Leinster line.
Bowe spilled a difficult scoring pass two minutes after Easterby’s sinbinning for tripping Issac Boss but another Humphreys penalty brought Ulster to within two points.
But Contepomi had the final say with a 76th minute penalty.