The 2004 champion will meet eighth-seeded Dmitry Tursunov in Sunday's final, the Russian having upset third seed Fernando Gonzalez of Chile 6-4 6-2 in the day's late match to reach his first ATP final.
Haas breezed through the first set by twice breaking Hrbaty's serve, cleverly varying his pace and delivering a mix of slices and top spins to keep his opponent under pressure.
Seventh seed Hrbaty, playing only his second semi-final of the year, provided stiffer opposition in the second set which went with serve until Haas again broke in the 11th game.
The world number 21 produced a beautifully weighted top-spin lob that landed a foot inside the baseline. That put him 0-40 up on Hrbaty's serve in overcast conditions at the Los Angeles Tennis Center before he clinched the game to lead 6-5.
Sixth seed Haas, who fired down nine aces against the Slovak, then served out to finish the match in 65 minutes, booking a place in his third final of the year.
"I'm pretty pleased with the way I played today, especially in the first set," the 28-year-old Haas told reporters after winning his third semi-final of the season.
"I really used my chances, was aggressive when I had the chance and played some good defence as well. And I served well throughout the whole match.
"Today was a good opportunity to avenge myself for the last three losses, and that was on my mind," added the German,
The pair have now met 11 times, with Haas winning on seven occasions.
INSPIRED DISPLAY
World number 33 Tursunov reached the first ATP final of his career with an inspired display against the emotional Gonzalez.
The 23-year-old Russian clinched the opening set by breaking his opponent's serve in the 10th game, Gonzalez producing the first double-fault of the match to trail 15-40 and then hitting a forehand long.
The Chilean became increasingly frustrated in a contest between two players with booming forehands and double-faulted for the second time to be broken in the sixth game of the second set.
He smashed his racket in half on the ground, earning a warning from the umpire for racket abuse, before Tursunov cruised through the next two games to complete his first victory over Gonzalez in four meetings.
"I'm excited about reaching my first final but I got a little bit lucky, I played only three matches to get here," said Tursunov, who got a bye into the last four after top seed Andy Roddick withdrew because of a side injury.
"I kept the ball in play when I needed to and hit the big shot when I could."
World number 17 Gonzalez, who has lost all three ATP semi-finals he has reached this season, said: "Dmitry hit some really good shots. He surprised me a lot.
"I played a really bad game at 4-5. I didn't feel good on the court with him because he was hitting every ball. I got really disappointed after losing that game."