Cam Ward made nine saves after coming on with 10:08 left in the second period to replace starting netminder Anton Khudobin. Khudobin suffered a lower-body injury when he skated out to play the puck.
Ward allowed three of Phoenix's goals.
"A few guys came ready to play and battle and play their game, but we had too many passengers tonight," said Carolina coach Kirk Muller. "We had some of our top guys that just didn't bring their `A' game tonight."
With the score tied at 3 at the start of the third period, Carolina's Staal gambled in the offensive zone. He couldn't corral the puck, instead allowing Klinkhammer to skate forward on a 2-on-1. Klinkhammer decided not to pass, snapping the puck past Ward's glove.
"That's a tough pass to make on your off side there, so I just came down and shot it, and it went in," Klinkhammer said.
Doan then gave the Coyotes an insurance goal with 12:49 left when he scored on the power play.
Doan also had an assist for his first two points of the year.
"At some point, you have to start helping," Doan said. "The last few games, I've been playing better and been on the ice for goals for and opportunities, but nothing was going in. I fortunately got one tonight to get off the schneid and get going out there."
The relatively high-scoring game broke the mold of Phoenix's other victories -- the Coyotes had allowed four goals in their first three wins compared to 10 goals allowed in their two losses.
Phoenix had a strong start, outshooting Carolina 8-1 in the first 12 minutes and scoring the first goal.
With Carolina's Alexander Semin in the penalty box for hooking, the Coyotes' Derek Morris took a shot that hit the post. Boedker cleaned up the rebound, taking advantage of the fact Khudobin was out of position.
The Hurricanes tied the score when a Phoenix clearing attempt bounced to Staal, who was in front of the net. Staal backhanded the puck past Smith.
Both teams scored twice in the second period.
Nash started things off for the Hurricanes when he deflected a Ryan Murphy shot from the point above Smith's glove.
The Coyotes then had consecutive goals to take a 3-2 lead.
First, Klinkhammer finished a scrum in the crease by poking the puck through Khudobin's pads. After Khudobin's injury, Korpikoski finished a nice passing play with Mike Ribeiro by one-timing the puck past Ward.
The Hurricanes tied the score at 3 with less than 1 minute left in the second period when Skinner snapped a sharp-angle shot that went off Smith's helmet and into the net for a power-play goal.
Up until that point, Phoenix had killed off Carolina's first six power plays, including 1:56 of a two-minute advantage earlier in the second.
"We don't score on the 5-on-3, and it just dropped the whole life out of our team," Muller said.
Tuomo Ruutu played in his first game of the season for the Hurricanes after missing the team's first five games with a lower-body injury.
Muller had no update on Khudobin's status other than he'd undergo an MRI on Monday.
It was the teams' first game since Dec. 21, 2011. ... Elias Lindholm, Carolina first-round pick in the 2013, missed the game with an upper-body injury. ... Phoenix plays only its second home game of the season on Tuesday against Ottawa. ... Phoenix is 4-0 when it scores the first goal of the game.
Copyright by STATS LLC and The Associated Press
RALEIGH, NC - OCTOBER 13: Tuomo Ruutu #15 of the Carolina Hurricanes warms up for his season debut prior to an NHL...