The Australian finished with a 3-under-par 69 for a 72-hole total of 11-under 277 at Bay Hill.
Leishman edged third-round co-leaders Kevin Kisner and Charley Hoffman by one stroke. Neither could get anything going in the final round, and both shot 73.
Rory McIlroy made a last-day charge and wound up in a tie for fourth at 279 after a closing 69. Tyrrell Hatton of England also finished at 279 after a final-round 71.
Leishman holed a 50-foot putt at No. 16 to seize the lead, and he managed to make two knee-knocking pars to secure the victory. He had three birdies and two bogeys before making the eagle.
"I putted really well all week," Leishman said. "They weren't quite going in yesterday, but that one on 16, I actually hit that putt earlier in the week and missed it low left, and I worked on that, so practice pays off."
At the 18th hole, Leishman hit a pitch shot from 45 yards short of the green that stopped 3 feet from the pin. He sank the par putt to claim the victory, his second on the PGA Tour.
The weekend ended perfectly for Leishman except for missing a handshake from Palmer behind the 18th green. It was the first time the tournament was played since the passing of the legend last September.
"You see guys win and he's waiting there on the back of the green," Leishman said. "And to not have that is obviously very sad, but to win here is just a dream come true."
Kisner was in good shape after nine holes with a three-stroke lead, but he failed to make a birdie over the final 11 holes and had two bogeys on the back nine to give Leishman an opening.
"Well, not happy," Kisner said. "I had it right there in the palm of my hand to win, and I didn't get it done. Two over on the back nine is not good enough."
Hoffman's up-and-down round mixed five bogeys with four birdies. A bogey at No. 17 hurt his chances, but he finished in impressive fashion by sinking a 71-foot birdie putt on the par-4 18th hole.
"I had a chance," Hoffman said. "Proud of fighting back and making a birdie on the last to finish second, but obviously not what I wanted."
McIlroy moved into a tie for the lead with a birdie at the 16th hole, but he three-putted from 30 feet at No. 18 to doom his chances.
"I made a run," McIlroy said. "It was one of those things, like I played great today, gave myself plenty of chances, and made some birdies and did what I needed to.
"I'm pleased with how I went. Ten under for the weekend around here is good scoring, and I can take a lot of positives from it going into next week."
Canadian Adam Hadwin, the Valspar Championship winner last week, finished sixth at 280 after shooting a 71. First-round leader Emiliano Grillo fired a 68 and tied for seventh at 281 with Francesco Molinari and Lucas Glover.
Defending champion Jason Day of Australia rebounded from a 75 on Saturday with a 70 and tied for 23rd at 286.