Marchenko scored from the slot at 16:57 to cut it to 3-2.
Lundestrom scored an empty-net goal for the 4-2 final with 1:40 remaining.
The Blue Jackets finished with 42 shots on goal, 15 others that missed the net and had 21 blocked.
"Goal-scoring is funny, it goes in streaks," Columbus coach Dean Evason said. "A few weeks back, we couldn't miss and the pucks were finding their way in and we were getting some bounces and good stuff. And now it's gone the other way a little bit, but there's nothing we can do about it now except move forward and keep doing those things to get those opportunities."
NOTES: The Blue Jackets killed both penalties by the Ducks and have not allowed a power-play goal to Anaheim in their past 16 meetings, killing 41 straight penalties. ... Werenski played in his 500th NHL game, becoming the fourth defenseman in team history to reach the milestone. ... Blue Jackets defenseman Jack Johnson played in his 1,200th NHL game, joining Anze Kopitar, Marc Edouard Vlasic, Andrew Cogliano and Sidney Crosby as the fifth player from the 2005 NHL Draft class to reach the milestone. ... The Blue Jackets claimed defenseman Dante Fabbro on waivers from the Nashville Predators on Sunday. Fabbro will join the Blue Jackets for their next game at the Seattle Kraken on Tuesday. ... The Ducks have won nine of their past 11 against the Blue Jackets (9-2-0). ... Carlsson tallied his third game-winning goal of the season, tied for second in the NHL. ... Leason, who had been a healthy scratch the previous three games, entered the lineup in place of Mason McTavish, who was a game-time decision with an undisclosed injury. ... Ducks defenseman Cam Fowler skated in pre-game warmups, but missed his second straight game with an upper-body injury.