Nino Niederreiter and Dougie Hamilton each had a goal and assist, and Andrei Svechnikov and Teuvo Teravainen each had two assists for Carolina (19-11-1), which went 3-for-4 on the power play in its third straight win. James Reimer made 33 saves for his 150th NHL win.
[WATCH: All Hurricanes vs. Oilers highlights]
Edmonton came back to tie the game 3-3 in the third period after falling behind by three goals in the first, but Jordan Martinook gave Carolina a 4-3 lead at 9:27, and Aho made it 5-3 at 12:16 when he scored his second of the night on the power play.
"That felt really good, especially the way the game was going," Martinook said. "It turned the tide, and it worked out well. I don't think we played that good in the first. Luckily, we got two power-play goals and got a lucky one, but we didn't play that well in the first. If we don't come out 3-0, then it's a different game, I think. Sometimes, you just have to take those ones and move on."
Zack Kassian scored two goals, and Connor McDavid had three assists for the Oilers (18-11-4), who have lost two straight (0-1-1) and three of four (1-2-1). Mikko Koskinen made 26 saves.
"We put ourselves behind the eight ball," McDavid said. "I liked how we battled back. I thought our game was pretty good overall 5-on-5. Our special teams wasn't where it needed to be, and tonight it cost us."
Aho scored at 4:15 of the first when he converted a pass from Teravainen at the side of the net to give the Hurricanes a 1-0 lead.
Video: CAR@EDM: Aho buries perfect feed for 100th NHL goal
Niederreiter scored on the power play at 17:58, redirecting a pass from Jake Gardiner to make it 2-0.
Ryan Dzingel scored on the power play with a shot from the right face-off circle with four seconds left in the period to make it 3-0.
"It wasn't a great start by us," Aho said. "There were a couple PKs, and we had way too many turnovers. Up 3-0 after the first period, we were kind of fortunate, I think. But anytime we can be up by three goals after the first, it's good."
Kassian made it 3-1 at 7:45 of the second period when he scored off the rebound of a Caleb Jones wrist shot from the point.
Video: CAR@EDM: Kassian slides rebound past sprawling Reimer
McDavid lost control of the puck on a penalty shot at 1:48 of the third period after Hurricanes defenseman Brett Pesce was called for covered the puck with his hand in the crease.
"I must have intimidated him, I really scared him," Reimer said sarcastically. "He probably saw half the net and didn't know what to do and it surprised him. I wasn't expecting that, that's for sure. Luckily, that happened."
Ryan Nugent-Hopkins scored on the power play at 2:51 to make it 3-2, tapping in a cross-crease pass from Leon Draisaitl.
Kassian tied it 3-3 at 5:40 after taking a pass in front from McDavid, but Martinook scored 3:47 later with a shot through traffic to put Carolina back in front.
Video: CAR@EDM: Martinook breaks tie with wrist shot
"That [Martinook goal] was a huge play of the game, because obviously everything had flipped at that point and we needed a couple of good shifts, and he came out and got a goal," Hurricanes coach Rod Brind'Amour said. "We settled down, and we got a power play right after that, and that kind of put the game away."
Hamilton scored on a shot from the red line to make it 6-3 at 15:19.
They said it
"It's hockey, they're a skilled team, and to think you're going to hold that team, it's tough. They have arguably the best player in the world (Connor McDavid), and then you have [Leon] Draisaitl, who is probably top five too. You just try to contain as much as you can and score when you get your opportunities. You never want to see a three-goal lead disappear, but we just stuck with it. We have a lot of character in here." -- Hurricanes goalie James Reimer
"For the most part this year, we've been good at home. This one wasn't our best, but we battled, we hung in there even when we got down. That's something that we need to fix, definitely, our starts, but the way we battled back is definitely a promising thing." -- Oilers center Ryan Nugent-Hopkins
Need to know
Aho scored his 100th and 101st NHL goals in his 273rd game. He is the sixth fastest to 100 goals in Hurricanes history behind Sylvain Turgeon (187), Kevin Dineen (197), Geoff Sanderson (227), Eric Staal (268) and Jeff Skinner (269). ... Svechnikov extended his point streak to three games (two goals, three assists) and has 19 points (seven goals, 12 assists) in the past 15 games. ... McDavid leads the NHL with 55 points (19 goals, 36 assists), one ahead of Draisaitl (19 goals, 35 assists).
Hurricanes: At the Vancouver Canucks on Thursday (10 p.m. ET; SNP, FS-CR, NHL.TV)
Oilers: At the Minnesota Wild on Thursday (8 p.m. ET; FS-N, FS-WI, SNOL, NHL.TV)
Video: Aho scores a pair in Hurricanes' 6-3 win vs. Oilers