Tries from Kyle Eastmond, Anthony Watson, David Wilson and Matt Garvey saw Bath earn a bonus-point victory against London Irish.
Bath led at the break with Eastmond's try and three George Ford penalties, while Irish replied through Topsy Ojo's try and two James O'Connor kicks.
Watson and Wilson crossed after the break, which Ford converted, before Chris Hala'ufia bundled over for Irish.
But Garvey's late converted try and three Ford penalties sealed the win.
Before the game London Irish provided a guard of honour to flanker Declan Danaher, the club's longest-serving player in the professional era having joined in 1999, and who announced his retirement on Thursday.
In an entertaining first half London Irish were first to cross with wing Ojo bundling over from a yard off the back of a ruck following Share Geraghty's break.
O'Connor added the conversion having sent over an earlier penalty as the Exiles led 10-6 at that stage, with Bath's points coming through two Ford penalties.
Mike Ford's side were back ahead after Eastmond went over in the corner following a fine offload by Bath full-back Nick Abendanon.
O'Connor restored the lead with his second penalty, before Ford replied to give the visitors a 14-13 advantage at the break.
Two penalties in quick succession from Ford increased that lead to 20-13 and, although Geraghty replied, wing Watson then went over in the corner finishing off Abendanon's break.
Ford's penalty made in 30-16 before prop Wilson crashed onto the outside-half's pass to go over from close range under the posts.
Hala'ufia bundled over for Irish late on to give them some hope, with Ian Humphreys converting, but Exiles skipper George Skivington was sin-binned and Garvey earned the bonus point for Bath in the final minute.
Ford converted to take his tally for the day to 24 in front of over 22,000 fans at the Madejski Stadium.
London Irish director of rugby Brian Smith said:
"Emotionally it took a lot out of us because it turned a very tight four-point difference into an 11-point difference.
"My personal view is that it wasn't a try. A lot of teams in the league are using running interference - coaches call it running traffic - and when you get away with it it's all well and good.
"I thought there were a couple of players involved in that blocking try and I don't think I was the only person in the stadium with that view.
"It was a turning point in the game but it wasn't the whole game. It was up to us how we decided to respond to that adversity and for the next five minutes we were still focused on that.
"It's an emotional game and, playing in front of a full house, our boys were keyed up.
"Sporting life is not always fair and we needed to respond better to that event and we didn't."
Bath forwards coach Neal Hatley said:
"George Ford is unbelievably confident for a guy of his age. He's been fantastic since he came back from international duty.
"Once or twice his defence has been questioned but I thought his defence was absolutely outstanding.
"He was harrying people and he was getting stuck into our blokes to make sure we kept building the pressure on them, even when they had the ball.
"We've said we'd much prefer to be where we are with our noses in front but the five points are important as it starts to stretch open that gap.
"We need to take this momentum into Sale on Friday. They're probably one of the most underrated sides in the Premiership - they've got fantastic set-piece, a very good drive, a very good scrum - and when they find form they are a formidable side."
London Irish: O'Connor, Ojo, Mulchrone, Sheridan, Yarde, Geraghty, Allinson, Parr, Paice, Hagan, Skivington, Rouse, Low, Cowan, Treviranus.
Replacements: Fenby for Yarde (75), Hala'ufia for Geraghty (66), Hoadley for Allinson (77), Stevens for Paice (67), Halavatau for Hagan (74), Humphreys for Rouse (66), Sinclair for Low (52), Yapp for Treviranus (17).
Sin Bin: Parr (13), Skivington (79).
Bath: Abendanon, Watson, Devoto, Eastmond, Rokoduguni, Ford, Stringer, James, Batty, Wilson, Hooper, Attwood, Garvey, Louw, Houston.
Replacements: Agulla for Abendanon (71), Young for Stringer (68), Catt for James (67), Dunn for Batty (77), Day for Hooper (77), Mercer for Louw (53). Not Used: Orlandi, Henson.
Ref: Greg Garner (RFU).