Kvitova followed up wins over world number one Angelique Kerber and Britain's Johanna Konta with a 6-1 6-2 demolition of Romania's Halep.
The two-time Wimbledon champion needed just 67 minutes to win the semi-final.
Kvitova goes on to face Slovakian 10th seed Dominika Cibulkova, who beat Svetlana Kuznetsova 3-6 6-3 6-4.
Cibulkova, who missed four months of the season in 2015 after having surgery on her left foot, is now close to qualifying for the eight-player WTA Finals in Singapore for the first time.
"I'm a good player," said the 27-year-old. "I can beat top players. But I was missing consistency in my game. This is the first year that I'm really consistent playing the whole year."
Kvitova, 26, hit 34 winners in a dominant display against Halep, overpowering the Romanian to reach her first final of 2015.
"It's amazing," said the two-time Wimbledon champion.
"I came to this tournament and really didn't expect this kind of performance. Physically I'm still so-so - I'm really happy that I'm not falling apart.
"But I played a really great match today in spite of everything, which really put the pressure on her."
Czech 14th seed Petra Kvitova kept up her superb form by thrashing fourth seed Simona Halep to reach the final at the Wuhan Open in China.