Molinari posted a final round of 65 to reach 22 under and become the first Italian to win a European Tour event twice.
The 2006 winner began round four with an eagle-birdie and held a four-shot lead with six holes to play but Masters winner Willett went birdie-eagle on the 13th and 14th to cut the gap to one.
Molinari bogeyed the 13th but birdied the holes either side and held his nerve to wrap up the 1-shot win.
''It's been a roller coaster,'' he said. ''It's amazing to see this amount of people out here supporting me. I had the ideal start, I couldn't start any better. When I birdied 12 I got four shots (clear) and thought maybe I could relax a bit and I got punished straight away.
''Coming in I had nothing left, I was just playing with my soul. I was hitting horrible shots but somehow I managed to bring it in.''
Spaniard Nacho Elvira and England's Chris Paisley, who had led after the second round, shared third at 18 under.
Molinari and Willett had shared the lead as round three was completed on Sunday morning, following bad weather in the first two days.
More than half of Darren Clarke's Europe team, including Willett, was competing in Monza ahead of the Ryder Cup at the end of the month.
Willett believes coming up against such a ferocious home crowd will hold him in good stead.
''I'm sure it's going to be 100 times worse when we get to the Ryder Cup in America, but it's been a little bit of a taster,'' he said. ''It's been good to play under that pressure and be under the gun and be in contention.
''If you finish a golf tournament 21 under par and you lose, I don't think you can be too disheartened about it.''