Wolves took the lead through a Stephen Hunt penalty on 17 minutes but Stoke shrugged off their Europa League exertions in midweek to win courtesy of a Kevin Doyle own goal and a winner from Peter Crouch.
Stoke's win denied Wolves a vital three points and was their fourth defeat in five games, a run which has left them just one place above the relegation zone as they prepare for a demanding Christmas and New Year programme which includes games against Arsenal and Chelsea.
Stoke by contrast remain in eighth spot after a win which sees them move to within two points of seventh placed Liverpool.
Wolves had got off to a strong start, winger Matt Jarvis threatening down the left flank as the home side hunted for an opener.
Stoke captain Ryan Shawcross was on hand to snuff out an early Wolves attack, intercepting a Jarvis cross to frustrate the England international.
Wolves then threatened again when full-back Ronad Zubar ghosted in to meet another Jarvis centre only before shooting wide.
Yet the problems soon began to mount for Stoke, who saw defender Jonathan Woodgate booked for a clumsy challenge on Jarvis.
It got worse for Woodgate on 16 minutes, when the former Spurs and Real Madrid star clattered into Jarvis to concede a penalty.
The challenge could easily have earned the already cautioned Woodgate a red card, instead the defender was reprieved by referee Anthony Taylor.
Hunt showed no mercy from the penalty spot however, driving his spot-kick past Thomas Sorensen for 1-0.
Stoke manager Tony Pulis swiftly reorganised his side however, substituting Woodgate for Jermaine Pennant after just 19 minutes.
Wolves continued to carve out promising openings but were made to pay for their profligacy on 58 minutes when Stoke struck back against the run of play.
Robert Huth unleashed a powerful free-kick from long range which took a huge deflection off Kevin Doyle to fly past a helpless Wayne Hennessey.
The goal transformed Stoke, who began to threaten through Pennant and Matthew Etherington.
Crouch then grabbed his winner on 70 minutes, bundling in the 99th league goal of his career after a teasing cross from Etherington.
Source: AFP
Source: AFP