France, one of the pre-tournament favourites, joins Uruguay and hosts Russia in the knock-out rounds with one group game to go.
Paris Saint-Germain forward Mbappe - aged 19 years and 183 days - underlined his rich talent and claimed his place in the French record books when he poked home in the first half.
Paul Pogba, the Manchester United midfielder who a few days ago called himself most criticised player in the world, flashed a drive wide and defender Raphael Varane did likewise from a header.
With 15 minutes gone, Pogba and France began to impose themselves.
Antoine Griezmann drove straight at goal-keeper Pedro Gallese after Olivier Giroud - starting in place of Ousmane Dembele - set up the Atletico Madrid forward.
Peru, unfortunate to lose 0-1 to Denmark in their first game, took until the half-hour to have their first serious chance, with recalled Skipper Paolo Guerrero stinging the legs of Hugo Lloris.
France Captain Lloris, making his 100th appearance for his country, was a bystander for long periods.
On 34 minutes France went in front. Pogba cleverly played in Giroud, his shot took a deflection and looped over Gallese, allowing Mbappe to stab into an open net.
New-found confidence ran through the French and Hernandez should have made it 2-0 just before the break.
As in the first half, Peru made the better start to the second and midfielder Pedro Aquino arrowed a long-distance rocket onto Lloris's upright.
But for all their possession, Peru - in their distinctive white kit with red sash - caused the French defence few problems.
Barcelona centre-back Samuel Umtiti was imperious alongside Real Madrid's Varane.
Add commentComments will be edited (grammar, spelling and slang) and authorized at the discretion of Daily Mirror online. The website also has the right not to publish selected comments.