The young Australian controlled large portions of Sunday’s race at Monza, but was forced to settle for second after his McLaren team paid the price for pitting their drivers twice.
After starting second on the grid beside teammate Lando Norris, Piastri seized the lead at the fourth corner with a daring move on Norris.
He led the race until lap 38, before McLaren pitted him for a second time for hard tyres with his previous set showing signs of wear.
That allowed Leclerc to move into first and, with Ferrari opting against a second stop, the Monegasque driver was left to hold on for the final 15 laps.
Piastri was able to move past Leclerc’s teammate Carlos Sainz and recover to second, and he narrowed the gap to the lead from 11 seconds with seven laps to go to 8.3 with five.
But ultimately the Victorian had to settle for second place, finishing 2.664 seconds behind Leclerc.
“It hurts. It hurts a lot. I did a lot of things right today,” said Piastri, who claimed his maiden F1 race victory in Hungary earlier this year.
“There was a lot of question marks on the strategy going into the race. Doing a one-stop looked like a very risky call - and in the end it was right.
“Today we unfortunately got it a bit wrong, we had everything to lose from being in the lead.
“Charles could try something different as he’d finish third either way. Painful.”
Leclerc’s win was a popular one in front of Ferrari’s home tifosi.
But it also has serious implications for Piastri’s teammate Norris, who came home in third and well ahead of championship leader Max Verstappen in sixth.
While Norris took eight points out of Verstappen’s championship lead and reduced it to 64 with eight races to go, he will feel he should have gained more out of Monza.
The Brit was left surprised and defenceless by Piastri’s first-lap swoop, with the Australian showing he is not ready to merely be a support act for Norris in the championship race.
That overtake left Norris out of position going into the next straight and allowed Leclerc to pass him for second spot.
And while he eventually retook second position from Leclerc, the work he had put through his tyres in doing so also prompted him to lose out with a two-stop strategy.
“We considered a one-stop strategy the whole race, but it was not possible with the amount of [tyre] graining I had,” Norris said.
“We are disappointed, but Ferrari drove a better race.”
McLaren could also have taken the lead in the constructors’ championship but ended the day still eight points behind Red Bull.
Sainz was fourth for Ferrari, while Lewis Hamilton came home sixth.
Australian Daniel Ricciardo finished 13th, after starting 12th and copping two mid-race penalties.
Meanwhile, stewards handed Haas’s Kevin Magnussen a one-race ban after the Dane received 12 penalty points in a 12-month period.
ANSA