The Lightning, whose franchise is 21 years old, posted only its second win ever in Vancouver. Tampa Bay made history of another sort by posting a fourth straight road win for the first time since Jan. 8-Feb. 7, 2008.
Tyler Johnson, Nikita Kucherov and Alex Killorn also scored for Tampa Bay.
Brad Richardson and Zac Dalpe replied for the Canucks, who lost their second straight.
Tampa Bay's Ben Bishop made 28 saves for his 21st win of the season as the Lightning outshot the Canucks 33-30. Vancouver's Eddie Lack recorded 29 saves.
Neither team scored in the first period despite some decent chances. Both teams recorded 11 shots.
In the first minute of the second period, Lack denied Filppula on a 3-on-2 rush, stopping his shot from the wing and then smothering the rebound.
Richardson opened the scoring at 11:25 as he raced in alone and beat Bishop with a quick shot after Vancouver defenseman Dan Hamhuis forced a turnover in the neutral zone with a hip check on Richard Panik.
But the tight game quickly broke open as the clubs produced three goals in 34 seconds.
Filpulla and Johnson scored 20 seconds apart to give Tampa Bay a 2-1 lead. But the Canucks countered 14 seconds later as Dalpe banged in a goalmouth pass from Dale Weise.
A botched Vancouver clearing attempt enabled Kucherov to put the Lightning ahead 3-2 during a power play with only 2.6 seconds left in the second period. Kucherov's riser went in off the skates of Hamhuis as he slid in an attempt to block the shot.
Killorn extended Tampa Bay's lead to 4-2 as he scored on a deflection with about 7:30 gone in the third period.
NOTES: Tampa Bay F Ryan Malone returned after missing 16 games with a fractured ankle. ... Vancouver C Ryan Kesler was named Wednesday to the U.S. Olympic team. He played for the American squad that won a silver medal in 2010. ... Lightning C Steven Stamkos skated Wednesday morning and said he hopes to recover from breaking his leg in November in time to play for Canada at next month's Winter Olympics. ... Canucks G Roberto Luongo took part in his first workout with the team, during its morning skate, since he was injured Dec. 22 against Winnipeg. Luongo revealed he suffered a lower body injury on a shot by Evander Kane and hopes to return to the lineup in the next few days. ... The Canucks have re-assigned C Jeremy Welsh to Utica of the AHL.