London Irish made it four Premiership wins in a row despite playing the final 25 minutes with just 14 men.
The Exiles had to rely on the boot of fly-half Barry Everitt and centre Riki Flutey to send title-chasing Bristol to their third successive league defeat and their first at home this season.
Bristol gave first league starts to Andrew Blowers at number eight in place of Geraint Lewis with hooker Scott Linklater deputising for Mark Regan who is carrying a slight injury but started from the replacements’ bench.
Alex Clarke returned at loosehead prop and Roy Winters at the front jumper while Brian O’Riordan deputising for England Shaun Perry at scrum-half.
The Exiles, without new England skipper Mike Catt, made two positional and three personnel changes. Riki Flutey switched to inside centre allowing Delon Armitage to revert to full-back. Topsy Ojo returned to the right wing and Everitt came in at fly-half while in the pack Faan Rautenbach returned to the front row.
The visitors applied the early pressure but unforced errors saw threatening attacks fizzle out but they did take the lead after 15 metres with a 22 metre penalty kick from Everitt after and infringement a lineout infringement.
Bristol squandered the opportunity of a quick reply when they were caught playing the ball on the ground just 15 metres from the line.
Midway through the half Everitt increased the visitors’ lead with a penalty from close to the right touchline. They should have stretched the lead further when scrum-half Paul Hodgson put the ball down into the corner with an overhead kick. The Exiles snatched the lineout ball but were penalised in front of the posts for pulling down the ruck.
Bristol too wasted a chance of scoring on their next visit to the visitors’ 22 when, after a period of sustained pressure, their were also penalised for pulling down a ruck The sunny but blowy weather meant that neither side could use the conditions as an excuse for their errors though the pitch was still very heavy.
Just before the interval wing David Lemi picked up a loose ball from Everitt and raced 60 metres, chased by full back Delon Armitage and Ojo to score under the posts with fly-half Jason Strange adding the extras to nudge Bristol in to a slender 7-6 lead at the break.
International referee Tony Spreadbury showed that he was not prepared to accept any ill-discipline when, 15 minutes in to the second half when Armitage was sent off and Bristol’s Lee Robinson was yellow carded for an off the ball incident that left the former Plymouth Albion wing with a bloody nose.
On the hour Flutey put the visitors back in front with a 45 metre kick from in front of the posts kicking in to the wind. Bristol came back from a break by Strange and flanker Nathan Budgett was held up over the line then a few minutes later Blowers was similarly denied after a quick free-kick.
Lemi had an outstanding game both in attack and defence for Bristol but too often the Exiles closed him down. A fourth Exiles penalty Flutey from 35 metres out, again in front of the posts, two minutes from time sealed the game for the visitors.