The score was tied 3-3 with 2 1/2 minutes left in regulation when Columbus center Ryan Johansen banked the puck off the boards in an attempt to send it behind his own net.
Instead of caroming behind the net, however, the puck bounced to the left side of the goal, where Perry picked it up, skated to the right and faked a shot before sending it past Sergei Bobrovsky for the decisive score.
Perry also had an assist while Emerson Etam, Ryan Gatzlaff and Peter Holland each scored for the Ducks, who improved to 2-2 on an eight-game road trip against Eastern Conference teams.
Frederik Andersen stopped 18-of-21 shots for Anaheim.
Artem Anisimov scored two goals and Blake Comeau scored one for the Blue Jackets.
Bobrovsky finished with 28 saves.
Biologists detail four new deep-sea 'killer sponges'
Pistorius testifies he didn't consciously pull trigger when he shot girlfriend