Ed Jovanovski and Lauri Korpikoski also tallied for the Coyotes, who snapped a two-game losing streak and won for the eight time in their last 10 tilts.
Jason LaBarbera, making his first start for Phoenix since November 10, turned aside 33 shots.
Matt Cullen and Mikko Koivu scored third-period goals for Minnesota, which has dropped five of its last six games. Jose Theodore stopped 32 shots in defeat.
Down 2-0, Cullen crashed the crease and lifted a rebound over LaBarbera to put Minnesota on the board at 12:13 of the third.
Upshall restored the Coyotes’ two-goal advantage with 2:40 remaining, but Koivu scored off a nifty Martin Havlat feed from behind the net to pull the Wild within one with 66 seconds left.
Korpikoski’s empty-net goal inside the final minute sealed the win.
Jovanovski tipped an Adrian Aucoin point shot past Theodore to give the Coyotes a 1-0 lead with 53.5 seconds left in the first period.
Phoenix led by two after Upshall one-timed Shane Doan’s cross-ice pass at the 5:43 mark of the middle stanza.
The Coyotes swept the four-game series from Minnesota last season, outscoring the Wild by a 14-8 margin…Phoenix improved to 6-0-0 against teams from the Northwest Division…Forward Pierre-Marc Bouchard returned to the Minnesota lineup. He had missed 104 straight games and 112-of-113 games overall since suffering a concussion against the New York Islanders on March 25, 2009.