After a 37-day stay in 14th place in the Western Conference, the Flames leapt over St. Louis and Columbus to move within four points of Colorado and Chicago, who are tied for seventh and hold down the final two playoff spots.
"We've still got to jump a bunch of teams here so there's a long way to go, but the positive thing is we are playing better hockey, we're playing more complete games, and it's adding up to some wins," said Morrison, who has scored in three straight games.
Alex Tanguay and Matt Stajan added two assists each. Calgary is 9-3-3 in its past 15 games, a stretch that began with a shootout win over Dallas on Dec. 23.
David Legwand scored for the Predators, who got 24 saves from Pekka Rinne. Nashville, which had won 10 of 12, remained in fourth place in the West, eight points ahead of the Flames.
"You have to tip your hat to them when it's deserved and they played very well tonight," Nashville defenseman Cody Franson said. "Kiprusoff played really well and they played a great team game. It was tough for us to generate anything."
With the Predators leading 2-1 in the third and pressing, Morrison scored the prettiest goal of the night when he converted Tanguay's perfect pass for his eighth goal of the season.
It was the second power-play goal of the night for the Flames, who last scored two power-play goals in a win over Toronto on Dec. 16. That was the last time Calgary was higher than 14th place, too.
"When you lose, it's almost like you don't want the puck," Tanguay said. "Right now everybody wants it, it's very contagious and hopefully we can keep on working the same way and keep on getting better."
Calgary's 26th-ranked power play finished 2 for 6 against the NHL's third-best penalty-killing unit. Nashville went 0 for 5 with the extra man.
"We have confidence right now. We are moving the puck extremely well," said Tanguay, who in the last couple of games has been playing the point on the power play alongside Mark Giordano.
Iginla gave Calgary a 2-1 lead at 13:01 of the second, also on a power play.
After three failed attempts with the man advantage, the Flames connected just 17 seconds into their fourth. Tanguay's slap shot was stopped by Rinne, but Stajan slid the rebound to a wide-open Iginla, who buried his team-leading 21st goal.
Calgary scored the lone goal of the first period on a bizarre play at 10:14.
From the side of the Nashville net, Glencross had his shot deflect off a stick and loop up in the air and over a helpless Rinne.
Legwand tied it at 10:32 of the second, knocking home a shot that squirted through Kiprusoff's pads.
The goal came less than a minute after Rinne kept the Predators' deficit at one with a superb stop on Rene Bourque, after he was set up by David Moss.
The Predators dropped to 3-2 on a season-high six-game road trip, which wraps up in Vancouver on Wednesday.
"Our penalty kill wasn't good enough tonight and neither was our power play and that was the difference," Predators defenseman Shane O'Brien said.
Kiprusoff was pulled twice in his previous four starts before turning in a 41-save performance Saturday night in the Flames' 4-3 shootout win over Vancouver. The 34-year-old Finn was solid again versus the streaking Predators, saving his best work for the third period as Nashville peppered him with 11 shots.
"He's bounced back huge for us. He played great in Vancouver, made some huge saves to keep us in that game and tonight, he made some difficult saves look easy and that's what he does when he's on his game," Morrison said.
Tanguay said the team never lost confidence in Kiprusoff despite the rough patch.
"Obviously, when you're the goalie, your mistakes show a little bit more than anyone else on the team but we've got confidence and in order to get where we have to, we need him to play well and we have full confidence he's going to do that," Tanguay said.
It was just the second time in his last 11 starts that Rinne gave up more than two goals. He is 9-2-0 during that span. ... Nashville RW J.P. Dumont, who had five goals in his last four games, did not play after getting a stick to the back of the neck Sunday night in Edmonton. ... Kiprusoff played in career game No. 500. ... Calgary is one of three teams Rinne has never defeated (0-3-1). The others are the New York Rangers (0-0-1) and Washington, whom he has never faced. ... Calgary RW Ales Kotalik was a healthy scratch for the second game in a row.
Copyright by STATS LLC and The Associated Press
Arena: Scotiabank Saddledome Location: Calgary, Alberta
Referees: Brad Watson, Brad Watson Linesmen: Mike Cvik, Don Henderson
Attendance: 19,289 (100.0% full)
Team Stat Comparison
Power Play Goals
Power Play Opportunities
Shots on Goal
Curtis Glencross (12)
Assists: Matt Stajan, Niklas Hagman
David Legwand (7)
Assists: Colin Wilson, Joel Ward
Jarome Iginla (21)
(Power Play) Assists: Matt Stajan, Alex Tanguay
Brendan Morrison (8)
(Power Play) Assists: Alex Tanguay, Mark Giordano