Andriy Yarmolenko’s goal shortly before half-time along with a superb overdue Aaron Cresswell free-kick extended United’s bare run on the street.
United, who began the season by beating Chelsea 4-0, have dropped twice in their opening six league matches and lie, without an away win in any contest since March.
Injury-hit United was without midfielder Paul Pogba and ahead Anthony Martial and huffed and puffed but failed to crack down their dogged competitions.
West Ham is riding high under Manuel Pellegrini, unbeaten as a 5-0 drubbing at the first game of this season and this success followed a house win last year against United in the London Stadium.
Nevertheless, it turned out to be a chastening afternoon for Ole Gunnar Solskjaer’s guys. Only a day later champions Manchester City came near to fitting United’s Premier League record for margin of victory — 9-0 from Ipswich at 1995.
Solskjaer played the same side that triumphed from Leicester last week while Pablo Fornals arrived for the wounded Manuel Lanzini for the home side.
Both sides were cagey at the onset of the game, with neither party able to make clear-cut opportunities.
West Ham appeared the creative team when they broke forward while United looked ponderous in assault and lacking in ideas, together with Marcus Rashford isolated front.
The game was drifting towards the period before Felipe Anderson, and Yarmolenko united to sap United’s confidence with a goal in the 44th minute.
Already short of choices upfront and overlooking founders in midfield, they dropped Rashford before the hour mark, replaced from the out-of-form Jesse Lingard.
West Ham went close to doubling their lead soon after but David de Gea got down to keep an Anderson shot from a tight angle.
United resisted the pressure, and West Ham needed goalkeeper Lukasz Fabianski to thank you for keeping a Harry Maguire attack from a close selection.
De Gea was a bystander since Cresswell curly a free-kick to the very best right-hand corner to add to United’s pain.