Wozniacki, who became the first Danish woman to win a Grand Slam title at this year’s Australian Open, is now 1-1 in her group. Kvitova is 0-2.
“I played much better today,” Wozniacki said on court after the match. “I returned well. I served well. Against Petra, she’s so powerful, you have to stay on your game. I just tried to stay focused and get a lot of balls back.
“I always believe in myself and when I’m out on the court I believe I’m going to win.”
Kvitova, who won the WTA Finals title in her debut appearance at the year-end tournament in 2011, was the one taking chances on Tuesday. But Wozniacki played steadier defense and waited for the Czech to make mistakes.
Kvitova finished the match with 40 winners and 40 unforced errors. Wozniacki had 19 winners and 14 unforced errors.
Wozniacki, who broke her opponent in the first and fifth games of the deciding set, took a medical timeout to have her left knee bandaged when Kvitova was leading 3-1 in the second.