Southampton slipped to their first defeat since the opening day of the season as Raúl Jiménez scored the only goal at St Mary’s.
Nathan Redmond had the ball in the net for Saints in the first half only to be flagged offside, but it was not until the second period that the contest came to life.
Wolves goalkeeper José Sá made saves from Tino Livramento, Mohamed Elyounoussi and Ché Adams before Jiménez struck on 61 minutes, leaving Saints’ central defenders in his wake and calmly passing the ball into the corner to win the match.
Having made wholesale changes for the midweek cup win at Sheffield United, Ralph Hasenhüttl reverted to the same XI that started the goalless draw at Manchester City last time out in the Premier League, with the exception of the forced absence of Jack Stephens through injury, paving the way for Mohammed Salisu to return to the league line-up.
Wolves, dressed head to toe in their dark grey away kit, were quick out of the blocks.
Jiménez received the ball to feet and played in flying full-back Nélson Semedo to his right, who might have done better than sting the palms of Alex McCarthy with barely 50 seconds on the clock.
McCarthy then made a routine catch from Romain Saïss’s header at the resulting corner, before Saints began to settle into the game.
Elyounoussi saw a shot blocked, while Adam Armstrong set up Adams for a tame effort straight at Sá in the Wolves goal.
This was not a first half to live long in the memory. When Livramento was poleaxed by Hwang Hee-Chan, James Ward-Prowse had a first chance to deliver a set-piece that was headed out only to Oriol Romeu, who thumped it on the volley high into the Northam Stand.
That rather summed up the lack of quality on show, but Saints finished with a flurry.
Redmond had the ball in the net, neatly taking a chipped pass on his chest, swivelling and stabbing a shot in off the crossbar as Sá advanced, only to be flagged offside.
Then Adams forced a weak clearance from the goalkeeper, before teeing up Armstrong for a snapshot that was well hit but too close to the Portuguese stopper.
Both teams knew they had to improve after the interval and the early signs were good. Armstrong picked out Ward-Prowse, but the skipper could not sort his feet out in time to shoot, while Hwang and Leander Dendoncker both saw efforts blocked after Wolves worked a corner short.
Then Armstrong, involved again, spread the ball wide to Livramento, who took a touch and drilled one hard and low to force Sá into his most taxing save to date.
This was much better from Saints, and Sá was busy again when Elyounoussi sent him flying to his right from 20 yards, parrying the ball only to Adams, who was sharp on to the rebound but could not beat the keeper, who spread himself bravely.
Suddenly the game had burst into life. Jiménez sent a dangerous low ball across goal that only needed a touch from a teammate to make the breakthrough.
The Mexican was still without a goal since suffering the horrific head injury that cut his season short last November, but that was about to change when he danced through the defence and kept his cool to break the deadlock just after the hour.
Jinking right then left, he left Salisu and Jan Bednarek in his wake before slotting home in front of the buoyant travelling fans.
Hasenhüttl’s response was immediate, introducing Armando Broja and Moussa Djenepo for Adams and Redmond, before Wolves sent on Adama Traoré to maximise the visitors’ counter-attacking threat.
The final throw of the dice was to replace Kyle Walker-Peters with Shane Long, making his first Premier League appearance of the season, as Djenepo filled in as a left wing-back.
It was from this position that Djenepo found unlikely winger Salisu in position to cross, picking out Armstrong who helped it on to Long, but the Irishman was thwarted by a crucial last-ditch block.
With six added minutes there was still time for Saints to save themselves, but instead it was McCarthy being kept busy, standing tall to deny Jiménez his second on the break.