The top-seeded Spaniard eased to his 59th victory of the year, breaking sixth seed Isner at 5-4 and holding his nerve to sweep a second-set tiebreak.
"I think I played a solid match," Nadal said. "I played very well, changing good directions... I think on return I did well.
"It's an important victory for me, of course, against a player that arrived here playing so well, winning two great matches. For me it's an important one and I'm very happy."
ATP Rome
Nadal heads to French Open with confidence boost after beating Djokovic
7 HOURS AGO
Dimitrov had to dig deep after being pushed hard in his quarter-final against Spain's Roberto Bautista Agut, but held out to beat the fifth seed 7-6(5) 4-6 6-2 in two hours and 29 minutes.
Dimitrov and Nadal have met on nine previous occasions - of which the Spaniard has won eight - but the Bulgarian's only victory over the world number one came in the Beijing quarter-finals last year.
"He is a player that I really like, a good friend on the tour," Nadal added. "I think Grigor is a player always with a great attitude, with a positive character. I'm happy for him that he's having a good year.
"Tomorrow will be a tough one, for sure. He's playing well."
Dimitrov's victory kept him in the hunt for a spot in next month's ATP Finals, and the 26-year-old stayed fifth in the Race to London rankings but has closed the gap on fourth-placed Austrian Dominic Thiem to 440 points.
Australian Nick Kyrgios sent down 12 aces against qualifier Steve Darcis, winning the first set 6-0 and going 3-0 up in the second before the Belgian retired due to injury.
Kyrgios, seeded eighth in China, will face second seed Alexander Zverev in the last four after the German ended Russian teenager Andrey Rublev's impressive run with a routine 6-2 6-3 victory.
ATP Rome
Injuries, upsets and champions rising - What did we learn from Italian Open?
16 HOURS AGO
ATP Rome
Nadal fends off Djokovic assault to win Italian Open for 10th time
21 HOURS AGO