Nino Niederreiter scored, Teuvo Teravainen had two assists, and Frederik Andersen made 22 saves for Carolina (19-6-1).
Ryan Nugent-Hopkins scored, and Mikko Koskinen made 28 saves for Edmonton (16-10-0), which has lost five straight, including the first four of six straight home games.
"I don't know how many times you want me to say the same thing here, but I thought, again, that we did some good things," Oilers captain Connor McDavid said. "We generated some chances but didn't find a way to put it in. That has kind of been the story of this homestand.
"I don't know what else you want me to say. We tried making plays, we tried blasting it right through the guy (Andersen), he was good."
It is the third game neither McDavid nor Leon Draisaitl scored a point this season. They combined for six shots, and the Oilers were 0-for-2 on the power play.
"Those are the games you get up for a little bit more," Slavin said. "They're world-class players and special, so when you get a chance to play against them, and try to shut them down, those are the games you dream of as a kid. … Our whole team did a great job top to bottom shutting those guys down."
Aho scored on the power play at 7:17 of the first period to give the Hurricanes a 1-0 lead. He had his backhand stopped by Koskinen and then scored on the rebound.
He has scored 12 points (five goals, seven assists) during a five-game multipoint streak.
"You don't really think a lot about having to score more or produce more, it's more the other stuff that comes first on our team, and making sure you do every detail right," Aho said. "You just have to trust your linemates, that they're going to see [me] when I'm open, and [then] when I have the puck [that] I can make the right play, but the work comes first."