Lautaro Martinez's 43rd-minute header settled the contest as Argentina stayed undefeated on the road to Qatar 2022.
Peru had the chance to snatch a point away from home, but Yoshimar Yotun's 65th-minute penalty cannoned off the woodwork in Buenos Aires.
Lionel Scaloni's Argentina – second in the standings – temporarily moved within three points of Brazil through 11 qualifying fixtures.
Argentina made a bright start to proceedings at the Monumental, with Rodrigo De Paul in the thick of the action as the host saw two shots flash across goal inside four minutes.
Gianluca Lapadula's free-kick forced in-form Argentina goalkeeper Emiliano Martinez into an early save, while La Albiceleste found the back of the net in the ninth minute, but Cristian Romero's header was ruled offside after a lengthy VAR review.
In a team headlined by Lionel Messi, De Paul continued to pull the strings with some wonderful passing and he was the centre of Argentina's opener prior to half-time.
De Paul played a neat one-two with Nahuel Molina and the latter picked out Lautaro Martinez, whose wonderful header beat Pedro Gallese two minutes before the break.
Jefferson Farfan came off the bench to make his 100th international appearance – the 36 year-old becoming the sixth Peru player to reach the century club.
He made an immediate impact, earning a penalty after being brought down by Emiliano Martinez but Yotun rattled the crossbar with his spot-kick.
Messi was largely subdued by Peru, though his free-kick 20 minutes from the end forced a save from Gallese.