Jesse Lingard’s masterclass put West Ham in pole position in the race for the Champions League.
The forward’s stunning solo goal inspired the nervy Hammers as they survived a Wolves fightback to win 3-2 and move up to fourth in the Premier League.
Lingard also had a key role in first-half strikes for Pablo Fornals and Jarrod Bowen – to put the Hammers 3-0 up – and now has six goals in eight games since joining on loan from Manchester United.
David Moyes’ side are four points behind third placed Leicester – who they host on Sunday – and a point ahead of Chelsea after taking advantage of the Blues’ shock defeat to West Brom.
Leander Dendoncker and Fabio Silva made the Hammers work, though, as they clung on for their first league double over Wolves in almost 100 years, having blown a 3-0 lead against Arsenal last time out.
West Ham – missing Declan Rice with a knee injury – had not beaten Wolves home and away in the league since 1922-23 but after Willian Jose dragged wide they took complete control of the first half.
Rui Patricio had already tipped Michail Antonio’s stinging 30-yard drive onto the post before Lingard lit up Molineux after six minutes.
Fornals and Vladimir Coufal set the Hammers away and Lingard collected the ball 10 yards inside his own half before bursting towards goal.
He breezed past the tame challenges of Dendoncker and Romain Saiss before firing past Patricio from 12 yards.
Wolves, who remain 14th after defeat, were frightened by Lingard’s direct running and he glided past Ruben Neves only to tamely shoot at Patricio from the edge of the box.
The on-loan Manchester United forward continued to terrorise the hosts and was crucial in the Hammers’ second after 14 minutes.
A brilliant piece of skill kept the ball in on the byline and Arthur Masuaku crossed for the arriving Fornals to steer in.
Wolves – who are likely to be without Jonny until the end of the year after he damaged his ACL for the second time in less than 12 months – were lost.
Daniel Podence’s hanging header did bounce off the top of the bar after 22 minutes but there was no consistent response from Nuno Espirito Santo’s side.
Lingard was running riot and the Hammers made it 3-0 seven minutes before the break.
The England international latched on to Tomas Soucek’s header to leave four Wolves defenders trailing and slip in Bowen.
The substitute – only on the pitch for 154 seconds having replaced the injured Antonio – then rifled a drive past Patricio at his near post.
Wolves tried to recover but Pedro Neto underlined their woes when he stabbed wide from six yards with Lukasz Fabianski grounded after he parried Jose’s effort.
However, the scars of losing a 3-0 lead to draw 3-3 with Arsenal before the international break would have fresh for the Hammers and old wounds opened a minute before the break.
Adama Traore – previously without a goal or an assist all season – burst down the left and delivered a wicked cross for Dendoncker to power in a downward header.
It ended a breathless half and Soucek thought he continued the goalrush after 59 minutes when he followed up Bowen’s shot but was rightly penalised for handball.
It almost proved costly as Silva made it 3-2 with 22 minutes left, latching on to Neto’s ball and drilling in low across Fabianski.
Dendoncker and Neto then blazed over with Wolves chasing a leveller but West Ham held on to keep their Champions League challenge on track.