Innes steered home Andy Dorman’s 74th-minute corner to add to his recent strike against Kilmarnock and take Saints within a point of the sixth-placed Dons.
Charlie Mulgrew and substitute Chris Maguire both hit the woodwork as Aberdeen, the lowest scorers in the SPL with 13 goals in 18 games, again paid the price for failure in front of goal.
Both sides were chasing a third-successive victory and the hosts looked the less likely team for much of the game, but a brilliant finish from Innes earned them their first win over Aberdeen since 2001.
St Mirren brought back fit-again skipper John Potter, Michael Higdon, David Barron and Hugh Murray following the Active Nation Scottish Cup win over Alloa.
Aberdeen welcomed back Davide Grassi and Richard Foster from suspension but Lee Miller continued his SPL ban after appearing in the cup triumph over Hearts, which proved to be the final Dons appearance for Maurice Ross before his move to Beijing Guoan.
St Mirren should have taken the lead after three minutes when the ball fell kindly for Dorman four yards out after Murray and then Higdon had headed on Barron’s cross. But the midfielder’s finish lacked conviction and Jamie Langfield threw himself down to block.
The visitors, playing a 4-5-1 formation, soon had a good chance when Potter and goalkeeper Paul Gallacher got in each other’s way, but Peter Pawlett stabbed wide from 12 yards.
Fraser Fyvie and Richard Foster both shot just over from long range for the Dons, and Pawlett hooked wide following Mark Kerr’s up-and-under, but the first quarter was a scrappy affair with the ball in the air for much of the time.
Aberdeen gradually took control with Pawlett displaying much of the finesse on display, and the teenager won a free-kick 20 yards out after being hauled down by Potter as he ran on to a Foster through-ball. Mulgrew came forward from central defence but Gallacher threw himself to his left to push the former Celtic player’s curling effort wide. The St Mirren goalkeeper then pushed away a bouncing 30-yard strike from Paul Marshall.
Mark McGhee employed a more attacking formation for the second half with Pawlett switching to the right to play in an advanced role and Marshall moving to the left.
Fyvie was finding space to play just behind Darren Mackie and he set up the striker with a well-weighted ball over the top. Mackie beat Gallacher to it just inside the box but Innes comfortably got back to prevent the striker’s effort rolling in.
Gus MacPherson replaced Higdon with Craig Dargo on the hour mark in a bid to turn the tide but Aberdeen went close again when Mulgrew’s powerful free-kick from the left hit the wall and looped on to Gallacher’s crossbar.
Maguire replaced Marshall as Aberdeen put two up front for the final quarter but they soon found themselves behind.
Saints forced a corner when Jerel Ifil turned Stephen McGinn’s low cross behind after Mulgrew had been caught in possession. Innes met Dorman’s penalty-spot delivery on the half-volley and steered the ball in off the bar. Grassi and Kerr fired wide after set-pieces as Aberdeen pressed and Maguire struck the post with an angled drive with four minutes left.