It lifts the West Country club back into fourth place, but the overwhelming feeling was one of disappointment that they did not manage a fourth try which would have earned them a bonus point to leapfrog Sale.
The home side actually notched up their third try in the first half but had only an Olly Barkley penalty to show for their increasingly frenetic efforts in a second half which had 10 minutes of stoppage time.
The Irish, under the cosh for virtually all of the second half, managed a try from Ryan Strudwick in the 86th minute and, with Barry Everitt's conversion, even gave themselves a chance of snatching a losing bonus point.
The visitors were themselves on a five-match winning run and, except for prop Neal Hatley, were able to field the same side that defeated Newcastle last weekend.
Bath too restricted themselves to one change from their winning line-up at Leeds, bringing back flanker Andy Beattie after a calf muscle strain.
But with front row resources stretched to breaking point they drafted in a new temporary signing from South Africa onto the bench, 30-year-old prop Heinrich Kok.
It was the Irish who settled into their rhythm more readily than Bath but despite retaining the ball through phase after phase of loose play they eventually saw a pass intercepted by Frikkie Welsh and it took a timely intervention by Geoff Appleford to prevent the try at the other end.
It was 19 minutes before there were any points on the scoreboard, Barkley kicking a penalty for Bath from 35 metres.
The first try came less than two minutes later when Bath fly-half Chris Malone hoisted a high kick which was spilled by Mark Mapletoft, only just switched to full back after an injury to Michael Horak.
Barkley toe-poked the ball on, gathered it up and slid over the line for the score, converting the try himself.
Mapletoft made amends with a short range penalty five minutes later to make it 10-3 and the Irish were given further encouragement when Bath lost back row man Michael Lipman with a calf injury.
As he limped off, however, Bath scored again after James Hudson won a line-out and then Rob Fidler and Malone sent Zak Feaunati over at the posts for a try converted by Barkley.
It was a slick move but not as easy on the eye as Bath's first try on 40 minutes, finished off by Alex Crockett after Matt Perry had come into the line.
Barkley's conversion from the touchline was sweetly struck but four minutes into stoppage time in the first half he saw his pass intercepted by Justin Bishop who sped 60 metres for the try. Mapletoft's failed conversion left the score 24-8 at the break.
A flurry of tactical substitutions by both sides early in the second half ruined what had been an entertaining game.
The next score, a Barkley penalty on 55 minutes, could have been worse for the Irish as it was given for a high tackle by second row Bob Casey on Welsh when he seemed odds-on to score.
Irish continued to be pummelled up front but held their line despite a yellow card being issued to replacement second row Roland Reid on 71 minutes.
Another Bath try seemed inevitable but it came at the other end when Strudwick profited from an overlap.
For Bath:Tries: Barkley, Fea'unati, CrockettCons: Barkley 3Pens: Barkley 2
For London Irish:Tries: Bishop, StrudwickCons: EverittPens: Mapletoft