Ottawa, last in the Eastern Conference, got goals from Jason Spezza and Milan Michalek. The Senators dropped to 6-4-1 over their last 11.
St. Louis put the Lightning up 1-0 on an in-close goal at 3:15 of the second. Just 14 seconds later, Tampa Bay goalie Dwayne Roloson made a glove save on Ryan Shannon's shot from the left circle.
Moore made it 2-0 with 12:35 left in the second. Marc-Andre Bergeron's shot went off the end boards and rebounded into the crease, where Moore poked the puck into the net while Ottawa goalie Curtis McElhinney was trying to control it with his glove.
St. Louis extended Tampa Bay's advantage to 3-0 on his 29th goal of the season 5:48 into the third. St. Louis scored off a pass through the slot from Gagne.
After Spezza scored with 9:57 left in the third, Tampa Bay responded with Moore's second of the game, 1:24 later.
Michalek scored a shorthanded goal later in the third. Tampa Bay has given up 16 shorthanded goals.
Stamkos, who has just four goals in his last 22 games, scored his 44th this season with 33.9 seconds left. Stamkos also ended a five-game point drought earlier with an assist on St. Louis' third-period goal.
NOTES: McElhinney, claimed by Ottawa off waivers from the Lightning on Feb. 28, had beaten Tampa Bay twice earlier this month. He never played with the Lightning after being obtained in a trade with Anaheim on Feb. 24. ... Bergeron stopped a personal 11-game point drought. ... Tampa Bay C Vincent Lecavalier had an assist to extend his point streak to five games (five assists, seven points).