David Oliver scored the winning goal, Bill Guerin also scored and Steve Ott added two assists for the Stars, 7-1-1 in their last nine game. Since losing 2-1 in Arizona on Dec. 10 to cap a five-game losing streak, Dallas is 15-5-6.
Morrow had a chance at a fourth goal, but missed an empty-net attempt wide left in the final minute.
Shane Doan, Ladislav Nagy, Christ Gratton and Mike Sillinger scored for the Coyotes, who have lost three straight and are 2-6-1-1 at homesince moving to Glendale Arena on Dec. 27.
The Coyotes had seven consecutive power plays in the first and second periods, scoring once.
Nagy tied the game 2-2 on a power-play goal 35 seconds into the second period, beating goalie Marty Turco to his stick side from the right side of the net for his team-high 22nd goal.
But Morrow answered 33 seconds later, chipping a loose puck in the left side of the crease just past goalie Sean Burke's outstretched right skate for a 3-2 Dallas lead. Oliver extended the lead at 8:18 of the second, receiving a long outlet pass from Ott behind the defense, skating untouched to the crease and firing over Burke's left shoulder for his fifth goal.
Doan pulled Phoenix to 4-3 at 10:43 when he took the puck behind the net, skated out to Turco's right and stuffing the puck in the short side for his 20th.
Three consecutive Dallas minor penalties gave the Coyotes an extended 3-minute, 37-second power play -- 2:06 with a two-man advantage -- but Phoenix was unable to tie the game.
Guerin made it 5-3 with an unassisted goal at 4:07 of the third, his 22nd goal. Gratton cut the lead to 5-4 on his seventh goal at 6:18 of the period.
After Sillinger gave the Coyotes a 1-0 lead 1:37 into the game, Morrow scored twice in a 101-second span of the first to give the Stars a 2-1 lead.