Ethan Bear and Vincent Trocheck scored, and Frederik Andersen made 18 saves for the Hurricanes (41-14-5), who have lost two in a row after winning four straight.
"I thought we played hard. We always play hard, which is good, but we have to capitalize on our chances, which we didn't, and that magnifies the mistakes you make," Carolina coach Rod Brind'Amour said. "You're going to make mistakes, but give them credit, they capitalized and obviously got the win out of it."
Mikheyev put Toronto ahead 1-0 at 15:48 of the first period when he caught Andersen leaning and scored from a sharp angle with a backhand on a rush.
The Hurricanes outshot the Maple Leafs 14-6 in the first period.
"That [stinks], obviously. Toronto is a good team, and obviously they have a lot of skill and they're a fast team, so when you get behind, it's tough to claw out of these games," Bear said. "It's just tough. You always want to get that first goal."
Kallgren kept Toronto ahead when made a sprawling left pad save on Brady Skjei 20 seconds into the second period.
"It was a situation in front of the net and he was kind of all by himself, so I just tried to stick my left pad out there and I got lucky and saved it," Kallgren said.
Marner then made it 2-0 at 4:39 when he cut in down the right wing and shot under Andersen's right pad on a 2-on-1.
"There was that one big chance in the second where he kicked his leg out. Those are game-changing or saving type of saves," Keefe said. "They make a major difference where they allow our team to find themselves and get going, so [Kallgren] was terrific."