Garrison fired a shot from the slot that deflected off Marek Zidlicky and past former Canuck Cory Schneider for the winner a 2:18 of the extra period.
Schneider, who was traded to New Jersey in the offseason, stopped 29 shots in the loss. Jaromir Jagr and Patrik Ellas scored for the Devils.
New Jersey held a 2-0 lead midway through the second period. Vancouver responded in the same period with two goals, including Edler's wrist shot that tied the game at 13:47 of the second period.
Benedict Cumberbatch's dramatic reading of R. Kelly lyrics is just what you need
Kate Middleton recycles dress at movie premiere