Peter Crouch completed a fine Stoke comeback as Wolves squandered the lead and increased their relegation fears.
Stephen Hunt's penalty put the home side ahead after Jonathan Woodgate had fouled Matt Jarvis.
But the visitors stunned Molineux with two goals in 12 second-half minutes to secure a fourth successive top-flight win for the first time since 1981.
Robert Huth's free-kick deflected off Kevin Doyle to make it 1-1 before Crouch sealed the points with a header.
Wolves, who have now lost four of the last five league games, only had themselves to blame for failing to put distance between themselves and the bottom three.
They face a crucial home game against Norwich on Tuesday and manager Mick McCarthy will be demanding an improvement from his players after throwing away the points.
Wolves looked to be cruising to victory in the first half but went to pieces after Huth's free-kick found the net after a heavy deflection.
These are good times for Stoke.
Not only have they won four top-flight games in a row for the first time in 30 years but they have an attractive Europa League tie with Valencia to look forward to in early 2012.
STOKE'S LAST FOUR PREMIER LEAGUE RESULTS
H v Blackburn W 3-1
A v Everton W 1-0
H v Tottenham W 2-1
A v Wolves W 2-1
Yet Tony Pulis's side, who are now two points behind seventh-place Liverpool, looked to be heading for defeat after Hunt's 17th-minute breakthrough from the spot.
Woodgate could have few complaints as referee Anthony Taylor awarded a penalty after the former England defender hauled down the impressive Jarvis for the second time.
Woodgate was fortunate to escape a red card having earlier been booked for a cynical foul on the same player.
But Woodgate did not stick around for long - Pulis replacing the former Tottenham player with Jermaine Pennant in the 19th minute.
Wolves did not look like a team dicing with danger near the bottom of the table.
McCarthy's side dominated for long spells with the busy Hunt denied his second goal by a fine Thomas Sorensen save after the Potters defence had been caught out.
Yet with only one goal dividing the two teams, the game was far from over and Wolves were fortunate to escape unpunished when Matthew Etherington fired straight at keeper Wayne Hennessey from close range in the 42nd minute.
It was a warning Wolves failed to heed as Stoke hauled themselves back on level terms before securing the points during a dramatic 12-minute spell after half-time.
They equalised when Huth's free-kick, which was going wide, deflected off Republic of Ireland striker Doyle before finding the net.
And Crouch was in the right place at the right time to beat Hennessey from close range after meeting Etherington's cross.
McCarthy directed his frustraton at the referee after the game but he knows his players have to learn to kill off teams if they are to steer clear of the bottom three.
- 01 Hennessey
- 11 Ward
- 14 Johnson
- 16 Berra Booked
- 23 Zubar
- 08 Henry
- 12 Hunt (Hammill - 80' )
- 17 Jarvis
- 20 Milijas Booked (Guedioura - 75' )
- 10 Fletcher
- 29 Doyle (Ebanks-Blake - 75' )
- 31 De Vries
- 03 Elokobi
- 05 Stearman
- 19 Hammill
- 34 Guedioura
- 37 Forde
- 09 Ebanks-Blake
- 29 Sorensen
- 04 Huth
- 17 Shawcross Booked
- 30 Shotton
- 39 Woodgate Booked (Pennant - 19' )
- 06 Whelan (Palacios - 83' )
- 12 Wilson
- 18 Whitehead Booked
- 26 Etherington (Fuller - 87' )
- 19 Walters
- 25 Crouch
- 01 Begovic
- 20 Upson
- 16 Pennant
- 40 Palacios
- 09 Jones
- 10 Fuller
- 33 Jerome
Live Text Commentary
Full Time The match has reached full-time.90:00 +3:48
Adlene Guedioura takes a shot. Save made by Thomas Sorensen.90:00 +0:39
Jonathan Walters takes a shot. Save by Wayne Hennessey.89:40
Karl Henry takes a shot. Ryan Shawcross gets a block in.86:51 Substitution
Substitution Ricardo Fuller replaces Matthew Etherington.83:36
Peter Crouch fouled by Adlene Guedioura, the ref awards a free kick. Free kick taken by Jermaine Pennant.82:35 Substitution
Substitution Glenn Whelan goes off and Wilson Palacios comes on.79:07 Substitution
Substitution Adam Hammill comes on in place of Stephen Hunt.78:21
Stephen Hunt takes the inswinging corner, Headed effort from deep inside the penalty area by Sylvan Ebanks-Blake goes harmlessly over the crossbar.75:57
Free kick awarded for an unfair challenge on Steven Fletcher by Ryan Shawcross. Stephen Ward takes the direct free kick.74:42 Substitution
Substitution Kevin Doyle goes off and Sylvan Ebanks-Blake comes on.74:12 Substitution
Substitution (Wolverhampton) makes a substitution, with Adlene Guedioura coming on for Nenad Milijas.72:44
Peter Crouch concedes a free kick for a foul on Wayne Hennessey. Indirect free kick taken by Wayne Hennessey.69:31
The ball is crossed by Matthew Etherington,69:19
The assist for the goal came from Matthew Etherington.69:19 Goal scored
Goal! - Peter Crouch - Wolves 1 - 2 Stoke Peter Crouch finds the net with a headed goal from inside the six-yard box. Wolverhampton 1-2 Stoke.69:01
Stephen Hunt takes a shot. Blocked by Robert Huth.68:32
Outswinging corner taken from the left by-line by Matthew Etherington.68:11
Matthew Etherington produces a drilled left-footed shot from 20 yards. Fantastic save by Wayne Hennessey.66:42 Booking
Booking Christophe Berra receives a yellow card.
Foul by Christophe Berra on Dean Whitehead, free kick awarded. Thomas Sorensen takes the free kick.65:19
Ronald Zubar has an effort at goal from just outside the penalty box which goes wide of the left-hand post.63:22
Free kick taken by Wayne Hennessey.63:22 Booking
Booking Booking for Dean Whitehead for unsporting behaviour.63:12
Unfair challenge on Christophe Berra by Dean Whitehead results in a free kick.61:39
Free kick taken by Wayne Hennessey.61:27
Glenn Whelan concedes a free kick for a foul on Karl Henry.59:50
Effort on goal by Nenad Milijas from long range goes over the crossbar.57:15
Assist on the goal came from Robert Huth.57:15 Goal scored
Goal! - Kevin Doyle - Wolves 1 - 1 Stoke Kevin Doyle puts the ball into his own goal from 18 yards. Wolverhampton 1-1 Stoke.56:29
Unfair challenge on Jonathan Walters by Roger Johnson results in a free kick. Robert Huth has a direct shot on goal from the free kick, Kevin Doyle gets a block in.53:57
Corner taken by Matthew Jarvis, Ryan Shawcross manages to make a clearance.53:16
Stephen Hunt takes a shot. Thomas Sorensen makes a brilliant save.51:30
Ronald Zubar restarts play with the free kick.51:30 Booking
Booking Ryan Shawcross goes into the book.51:06
Free kick awarded for a foul by Ryan Shawcross on Kevin Doyle.50:44
Effort on goal by Jonathan Walters from inside the penalty area goes harmlessly over the bar.49:52
Dean Whitehead takes the free kick.49:52 Booking
Booking Nenad Milijas booked for unsporting behaviour.49:29
Nenad Milijas gives away a free kick for an unfair challenge on Jonathan Walters.48:59
The referee blows for offside. Free kick taken by Wayne Hennessey.47:45
Foul by Christophe Berra on Jonathan Walters, free kick awarded. Glenn Whelan restarts play with the free kick.45:35
Stephen Hunt takes a short corner.45:01
The referee gets the second half underway.45:00 +2:34 Half time
Half Time It is the end of the first-half.45:00 +1:40
Matthew Jarvis takes a corner.45:00 +1:00
Headed effort from deep inside the area by Ryan Shawcross misses to the right of the goal.45:00 +0:34
Unfair challenge on Glenn Whelan by Nenad Milijas results in a free kick. Direct free kick taken by Matthew Etherington.43:42
Inswinging corner taken by Jermaine Pennant.43:05
Corner taken by Jermaine Pennant, clearance made by Christophe Berra.42:54
Centre by Matthew Etherington, clearance by Christophe Berra.41:54
Ryan Shotton crosses the ball, Matthew Etherington takes a shot. Save made by Wayne Hennessey.40:33
Corner taken right-footed by Jermaine Pennant from the left by-line, Kevin Doyle makes a clearance.40:17
The ball is crossed by Matthew Etherington, Ronald Zubar manages to make a clearance.38:38
Stephen Hunt takes a short corner.37:55
Free kick awarded for an unfair challenge on Steven Fletcher by Robert Huth. The free kick is delivered right-footed by Nenad Milijas from right wing, Marc Wilson manages to make a clearance.34:07
Stephen Hunt takes a shot. Save made by Thomas Sorensen.28:03
A cross is delivered by Matthew Etherington.27:02
Jermaine Pennant crosses the ball, blocked by Nenad Milijas.25:24
Outswinging corner taken by Matthew Etherington from the left by-line.25:14
The ball is swung over by Ryan Shotton, Karl Henry makes a clearance.20:27
Karl Henry gives away a free kick for an unfair challenge on Jermaine Pennant. Free kick taken by Thomas Sorensen.19:47
Corner taken short by Stephen Hunt.18:48
Glenn Whelan concedes a free kick for a foul on Matthew Jarvis. Nenad Milijas delivers the ball from the free kick right-footed from left channel, clearance by Robert Huth.18:08 Substitution
Substitution Jermaine Pennant is brought on as a substitute for Jonathan Woodgate.17:46
Unfair challenge on Peter Crouch by Roger Johnson results in a free kick. Direct free kick taken by Marc Wilson.16:06
Matthew Jarvis provided the assist for the goal.16:06 Goal scored
Goal! - Stephen Hunt - Wolves 1 - 0 Stoke Penalty taken left-footed by Stephen Hunt and scored. Wolverhampton 1-0 Stoke.15:13
Unfair challenge on Matthew Jarvis by Jonathan Woodgate results in a Penalty.13:28
Effort on goal by Jonathan Walters from inside the penalty box misses to the right of the target.12:51
Matthew Jarvis delivers the ball.10:41
Roger Johnson has a header from inside the six-yard box and clears the crossbar.9:28
The free kick is swung in right-footed by Stephen Hunt, clearance made by Roger Johnson.9:28 Booking
Booking Jonathan Woodgate is given a yellow card.9:16
Foul by Jonathan Woodgate on Matthew Jarvis, free kick awarded.7:01
Short corner taken by Stephen Ward.6:46
The ball is delivered by Matthew Jarvis.6:18
Peter Crouch challenges Ronald Zubar unfairly and gives away a free kick. Free kick taken by Ronald Zubar.2:53
Effort from inside the area by Ronald Zubar misses to the right of the target.2:16
Glenn Whelan concedes a free kick for a foul on Stephen Hunt. Matthew Jarvis crosses the ball from the free kick left-footed from left channel.0:00
The referee gets the match started.
Live data and text provided by our data suppliers