Sharapova, who won 6-2 3-6 6-4 to move through to a meeting with Victoria Azarenka in the title-decider, was overpowered at times but found the reserves to advance.
Saturday's champion will also become the new world number one, taking over from Caroline Wozniacki, who will drop to number four.
"I just felt in the third set she had the advantage because I was always down on my serve," said Sharapova.
"I thought I had to hit it and don't let her finish the points the way she likes to.
"I just hung in there and got a few returns in in that final game, perhaps that was the key."
Kvitova looked completely out of sorts in the first set, with her movement particularly suspect.
Sharapova, on the other hand, was full of intensity and forced an early break from the Czech and although her opponent hit back, further breaks in the fifth and seventh games handed her the opening set.
The Russian started the second shakily with her serve, so often her Achilles heel, starting to falter and a double fault on break point handed Kvitova a route back into the contest.
And with the momentum shifting as Kvitova's powerful groundstrokes started to find their target, the second seed levelled with ease.
The players traded breaks at the start of the decider and having come through a titanic seventh game, Sharapova made her move to snatch the Kvitova serve and clinch the match.