The reigning world champion, which overturned a two-goal deficit against Belgium in Friday's semi-final, fell behind to Mikel Oyarzabal's second-half strike moments after Theo Hernandez had hit the woodwork.
However, Luis Enrique's side – who ended Italy's record 37-game unbeaten run in Wednesday's semi-final – were pegged back two minutes later as Benzema curled in magnificently.
Mbappe then doubled the blow as he netted after 80 minutes for France to secure their second trophy in three attempts following their win at the 2018 World Cup and disappointment at Euro 2020.
Marcos Alonso's wayward speculative long-range free-kick represented the only notable first-half chance as Spain struggled throughout the first 45 minutes to make their initial 66.7 per cent possession pay.
Raphael Varane was then forced off before the interval with what seemed to be an innocuous injury and matters worsened for Didier Deschamps' side after the break.
Mbappe's smart offload almost set up an opening goal but Hernandez struck the crossbar before Oyarzabal, who was released by Sergio Busquets, drilled into the bottom-right corner after 64 minutes.
However, Benzema and Mbappe combined to immediately level, with the former drifting inwards to bend a right-footed effort into the top-right corner before the latter put France into the lead.
The PSG forward appeared offside as he rounded Unai Simon following Hernandez's throughball but a VAR check stuck with the original decision as Mbappe recorded his fourth goal involvement of the Finals – more than any other player.
Oyarzabal then provided a late scare as he connected sweetly with a left-footed volley but was denied by Hugo Lloris before the France goalkeeper parried away from Yeremi Pino's first-time attempt to secure victory in the second edition of the competition.