Midfielder Nicholas Pennington took the decisive spot kick, coolly converting, via a two step run up that belied the tension.
City captain Scott Jamieson had earlier missed an opportunity to win the match for his team, blazing his penalty attempt over the bar.
It's a remarkable result for the Phoenix and a much needed tonic, given their recent struggles.
They were coming off a dismal 4-0 defeat to Adelaide on Saturday, and lost three players on match day, stood down as a precaution after returning "inconsistent" rapid antigen tests for Covid-19.
The individuals were not named, but key defender Tim Payne was a notable omission from Wednesday's squad, along with veteran striker Gary Hooper.
It was an outcome built on effort and desire, qualities that weren't apparent in Adelaide. The Phoenix were well organised throughout and never stopped working against their much vaunted opponents.
They rode their luck at times and were relieved to see Jamieson also miss a first half penalty, though that spot kick was debatable.
But the Phoenix had the best chance of the night, with Fenton hitting wide from six yards in the 89th minute, taking the ball off the toes of an unmarked Ben Waine who looked in a better position.
They also had the ball in the net just before halftime, after a clever set piece routine, but Jaushua Sotirio's header was ruled out for offside.
Last night's match was a chance to exorcise some demons for the Phoenix. Their only previous Cup encounter with City was a 5-1 defeat in 2015, while the game was hosted at the home of Victorian NPL team Bentleigh Greens, who knocked the Phoenix out of the competition in 2018.
The Phoenix were competitive from the start, with a more assertive approach that last Saturday in Adelaide.
But City should have gone ahead in the 26th minute, after Marco Tilio won a dubious penalty. There was a slight nudge in the back from Callan Elliott, but it was a 50-50 call at best, but Jamieson skied his attempt.
The best period for the Phoenix came early in the second period, as they enjoyed sustained periods of possession and mounted plenty of pressure, with half chances falling to David Ball and Waine.
Melbourne City dominated possession for most of the extra time period, but the Phoenix looked comfortable defending behind a deep block and were never seriously troubled, with Matt Leckie miscuing the best opportunity for City.
The 19-year-old Paulsen looked confident heading into the shootout, saving the first and third City attempts. But three consecutive Phoenix misses, after Waine had converted the first, meant the Wellington team were on the brink, before Jamieson's fateful mistake. Sotirio and Clayton Lewis then made no mistake, before Pennington's moment of glory, set up after Paulsen had brilliantly denied Tilio.
Wellington Phoenix 0 (4)
Melbourne City 0 (3)