Crewe led when Dean Ashton flicked on a David Vaughan free-kick and Wolves' Joleon Lescott got the final touch.
The visitors also went close when Ashton shot wide, Vaughan had an effort blocked and Jon Otsemobor saw a long-range strike deflected over.
Wolves got better after the break and Cole headed Seol Ki-Hyeon's cross into the far corner.
Crewe boss Dario Gradi on the future of star striker Dean Ashton:
"I would think he would be the latest one to leave. The aim is that he moves on in the summer, that's the objective.
"Obviously if someone came in in January and made us an offer we cannot
refuse and it seemed like a good deal for Dean, then we would listen to it. But
ideally he should move on - he's ready for the next challenge.
"You always think he is going to score goals. When he shoots, you think he is
going to score. And he's a big powerful lad - he can do a bit of everything."
Wolverhampton: Oakes, Newton, Lescott, Craddock, Naylor (Clarke 80), Cooper (Cameron 64), Olofinjana (Seol 70), Andrews, Kennedy, Cort, Miller.
Subs Not Used: Murray, Bjorklund.
Goals: Cort 90.
Crewe: Ince, Otsemobor, Walker, Foster, Moses, Bell, Sorvel, Vaughan, Lunt, Rivers, Ashton.
Subs Not Used: Williams, Rix, Varney, White, Bignot.
Goals: Ashton 38.
Ref: B Curson (Leicestershire).