Mbappe opened the scoring with another stunning goal before Giroud, who again showed coach Didier Deschamps he is more than a third-choice forward, sealed the world champions’ win with a header.
Victory kept Les Bleus’ hopes of staying in the top tier of the Uefa Nations League alive and moves them above Austria going into Sunday’s Group A1 finale in Denmark.
Croatia lead the group following a 2-1 win against Denmark, who would have sealed top spot themselves had they won in Zagreb.
Victory came at a price, however, as defender Jules Kounde and goalkeeper Mike Maignan sustained injuries, and may join Karim Benzema, Hugo Lloris and Paul Pogba on the sidelines.
Deschamps was satisfied with the performance in front of an unusually enthusiastic crowd.
“We did what we had to do,” the 1998 world champion said. “Our intentions were good, everyone defended a lot, there are a lot of positives. The mindset was good, it was a very good performance.”
The hosts, who had lost two and drawn two of their four previous games, came out with all guns blazing at the Stade de France.
At 35 years and 357 days, the AC Milan striker is 70 days older than Roger Marche was when he scored against Spain in December 1959.