The Red Wings won for just the third time in seven games, but still will have the second best record in the Western Conference going into the all-star break.
It remained 1-1 until Filppula put a slap shot past Martin Brodeur 5:32 into the third. Franzen's goal clinched it with 44 second to play.
Jimmy Howard won it with 23 saves. Brodeur stopped 26 shots.
Detroit has won six of its last seven meetings with the Devils.
Ray Liotta sues skin care company over use of likeness
NBC reportedly holds celebs hostage to Jimmy Fallon's show