Ferrari chose a one-stop strategy for Leclerc, improvising mid-race to vault him in front of the McLarens, who chose the conventional two-stop approach.
That left Leclerc hanging on in the closing laps from the rapidly closing McLarens, and he just managed to resist them, winning by 2.6 seconds to send the tifosi in the grandstands wild.
Red Bull's Max Verstappen could finish only sixth, and Norris cut his championship lead by eight points to 62 with eight races to go, thanks to Norris grabbing the fastest lap before the checkered flag.
McLaren is now just eight points behind Red Bull in the constructors' championship.
After locking out the front row of the grid, McLaren looked on course for a one-two for half the race, with Piastri leading Norris after the Australian passed the Briton around the outside of the second chicane on the first lap.
Piastri's fair but aggressive move ended with Norris slipping down to third in the first stint of the race, as Leclerc was also able to slip by into second on the exit of the corner.
After trailing Piastri and Leclerc through the first stint, Norris made his pit stop first in an attempt to undercut his way by Leclerc, who responded on the following lap.
Ferrari pitted on the next lap, but McLaren's strategy worked, vaulting Norris ahead of Leclerc, who initially complained on the radio.
McLaren pitted Piastri to ensure he kept the lead, following their team rules of being fair to both drivers, and the race now seemed to be a fight for victory between the two McLarens.
But Norris began to struggle with tire wear, slowly dropping back to five seconds behind Piastri and had to make a second pit stop on lap 32, with 21 to go, Piastri following him six laps later.

PHOTO COURTESY: SCUDERIA FERRARI
There will be questions as to whether McLaren, worried about heavier front tire wear than Ferrari, should have stayed out in front and gambled on their tires lasting.
Their decision to pit left Leclerc leading his teammate Carlos Sainz by just over 10 seconds with Piastri chasing both down, and Ferrari decided to chance their arm.
They knew a one-stop option would be difficult, especially with such an early first stop, but both drivers pulled it off.
But, while Sainz dropped back to fourth behind the two McLarens, Leclerc's lead was enough to keep him in front, to take one of the most stunning and unlikely victories of the year.
The crowd cheered him across the line as he took his second Monza victory for Ferrari, after his first in 2019.

PHOTO COURTESY: SCUDERIA FERRARI
"What an incredible feeling," said LeClerc. "The first time I won in Monza in 2019 was so emotional to both me and to our whole team, I didnβt think that winning here could ever feel like that again, but today, it did. Seeing our tifosi celebrating with us is just amazing and I am so glad that we could share this victory for a second time. Monaco and Monza were the two races I have always wanted to win, because they are so special to me. A huge thank you to every single person in our team who made this happen today. You have done an incredible job to make this dream a reality and we can all be proud to have achieved this together. We had a perfectly executed strategy today and beat our competitors to it, and we will give everything to keep this momentum for the rest of the season, taking any opportunity we have.
"But my god, the emotions in the final laps - just like 2019. Incredible.
"Monaco and Monza are the two races I want to win every year.
"Obviously, I want to win as many as possible, and the world championship as soon as possible, but these are the two most special and I have managed to win them this year. It is so, so special."

PHOTO COURTESY: RED BULL MEDIA HOUSE
For Red Bull, the Constructors Title lead is gone and the winless streak for Verstappen continues.
βOverall it was a tricky weekend in Monza both in qualifying and the race," said Verstappen. "In terms of position, we got the most out of today, there was a bad pit stop and we were also running down on power for most of the race but we just tried to do our own race. We couldβve executed a better strategy but in hindsight the two-stop was not optimal so it ended up being damage limitation until the end. There is a lot to analyze from this weekend. This is just how racing goes sometimes, we need to put our heads down and work as hard as we can to get back to where we want to be. Iβve given a lot of feedback on the car, so in the next two weeks before Baku we need to focus on turning things around and fixing some of the issues weβve identified over the past few weekends."

