The top-seeded Kvitova, ranked eighth in the world, dominated the first set but withstood a second-set barrage from the Romanian to set up a Sunday showdown with second seed Roberta Vinci.
"A lot of the games were really close throughout the match and we were having a lot of rallies," former Wimbledon champion Kvitova said. "It was very important for me to stay in the game and just fight for every point, because I know she's a big fighter.
“The score looks easy but it really wasn't easy at all."
It will be Kvitova’s 13th career final at the age of 23.
Italy’s Vinci easily beat world number 74 Annika Beck, knocking the German teenager out 6-1 6-0 in 49 minutes.
World number 13 Vinci’s blistering win meant she won 15 games in a row, having taken the last 12 of her quarter-final victory and the first three against Beck.
"I played some good tennis today - it was a good match," Vinci said after the match.
"It was like yesterday. I'm so happy about my game today and I'm excited to be playing in the finals now."