Jonathon Blum scored for the Predators, who have lost three of four.
The Predators held an 8-7 advantage in shots during the first period, but the Red Wings scored the only goal. Filppula fired a shot from high in the slot that beat goalie Pekka Rinne low to his right side at 10:57.
In the second period, the Red Wings scored two goals in 13 seconds.
Datsyuk scored on a wraparound as he squeezed the puck between the left post and Rinne at 12:52. The play was reviewed and the goal counted.
Moments later, Cleary's wrist shot from the low inside edge of the right circle beat Rinne to his glove side.
Filppula struck for the second time when he capped a flurry of shots with a wrister from low in the right circle 5:22 into the third period.
Blum ended Howard's shutout bid on a slap shot with 2:12 remaining.
NOTES: The Predators played without captain Shea Weber, who leads the team in points. He scored the tying and winning goals in a 4-3 win over the Red Wings on Dec. 15. Weber has an upper body injury. ... Ryan Ellis was recalled from Milwaukee of the American Hockey League by the Predators to replace Weber and made his NHL debut. ... Johan Franzen had one assist for Detroit, the 250th point of his career. ... Filppula needs four points to reach 200 for his career.