Former All Black Spencer sparkled in the first half, carving out two Saints tries, but the visitors eventually paid the price for losing the forwards battle and giving away penalties.
Peter Richards, Jake Boer and James Simpson-Daniel touched down for Gloucester, with Ludovic Mercier kicking two conversions and three penalties.
Saints boss Budge Pountney admitted he is worried by his side's indiscipline after four of his men - Dylan Hartley, Tom Smith, Dan Richmond and Steve Thompson - were sent to the sin-bin.
"I'm concerned by the high number of penalties given against our team but we're continuously working on this," he said. "This was a game that was in the palms of our hands."
London Irish will look closely at video footage of a second-half incident which saw their France flanker Olivier Magne sin-binned during the 24-22 win over Bristol at the Madejski Stadium.
There was confusion as to whether Magne had collided with an opposition player or referee Roy Maybank, but either way, the official decided it was worthy of a yellow card.
"Olivier is very disappointed he got carded," added Smith. "We need to find out what the issue was there, but Olivier Magne is not a dirty player."
Scrum-half Paul Hodgson condemned his former club to their second successive Guinness Premiership defeat with a try double.
And with his half-back partner Barry Everitt booting 14 points, Irish did just enough to end a run of six home league defeats stretching back 10 months.
Bristol made them sweat, though, especially when Samoa wing Brian Lima powered over for a try eight minutes from time.
Fly-half Jason Strange's conversion - he finished with 17 points - kept up the pressure but the Welshman's 48-metre penalty miss deep into injury-time enabled Irish to hold on.