Cardiff scores late to top Fulham
Steven Caulker headed the visitors into a 12th minute lead, but Fulham levelled through a 25-yard effort from substitute Bryan Ruiz on the stroke of half-time.
Just when the match seemed to be heading for a draw, Mutch cracked in a superb winner from 25 yards as the boos rang out on the banks of the Thames following a fourth league defeat in the opening six matches.
Robbie Brady converted a penalty on 12 minutes after what looked minimal contact from Irons defender Joey O'Brien.
Both sides hit the woodwork in what was an open game, but West Ham manager Sam Allardyce was again left fuming when two claims for handball were waived away by referee Kevin Friend in the second half.
The Eagles, with just one league win so far, felt they should have been given a penalty in the first half when Maroune Chamakh went clear through and tumbled under a challenge from goalkeeper Artur Boruc - only to be shown a yellow card for diving.
Saints, who won at Anfield last weekend, took hold of the match with two goals in as many minutes following the restart.
Club-record signing Dani Osvaldo opened his account two minutes into the second half when he lashed in Adam Lallana's pass, before England forward Rickie Lambert crashed in a 25-yard free-kick off the woodwork as as Mauricio Pochettino's well-organized outfit moved up into the top four.