It's the third time Kvitova has won the tournament, putting her one behind Venus Williams and Caroline Wozniacki for the tournament record. Kvitova won in 2012 and lost to Simona Halep in the 2013 final.
''It's the first time I've defended a title, it's a really good to have that experience,'' said Kvitova, who admitted fatigue after the tournament from her battle with mononucleosis. ''I feel terrible, but it doesn't matter. I will have day off tomorrow.''
Kvitova and Safarova will start U.S. Open play on Tuesday.
After dropping the first set in a tiebreaker, Kvitova broke Safarova's serve for the first time in the third game of the second set. From there, she took control on the way to her third singles title (Madrid Open, APIA International Sydney) this year and 17th overall.
The left-handers, who are friends off the court, wore the same outfits in the match - red skirts, white tank tops and red headbands.
''It felt like playing a Fed Cup actually, just against each other,'' Safarova joked. ''We know each other so well. It's never nice to face a friend, but it's a game.''
They were equally sharp on the court in the opening set, with neither being able to break the other's serve or take more than a one-game lead. Kvitova had six aces in the set, while Safarova had four. Even at 6-6 in the tiebreaker, Safarova was able to string together two straight points to close Kvitova out.
''My serve was working, so I was kind of able to hold to her level,'' said Safarova, who is 0-6 lifetime against her fellow Czech. ''My level dropped a little bit and she was more stable.''
The second set started in similar fashion before Kvitova was able to break Safarova's serve in the third game and take a 2-1 lead. The defending champion picked up momentum from there and won four of the next five games to force a third set.
''I think in the second set I was trying, still holding my serve,'' said Kvitova, who won 85 percent of her first serve points in the second set. ''The chance to break her came, which was really good. For the first time I break her serve and it's gave me little bit of confidence, as well.
''I think I was little bit better player in the second set.''
Kvitova dropped the first game in the final set, but took the next three. After changing racquets, Kvitova lost once more, but finished off Safarova by winning the last three.
''She's a big hitter, so she is putting a lot of pressure on you serving really big,'' said Safarova, who failed to break Kvitova's serve in the entire match. ''It's kind of hard to break into her serve, and it puts extra pressure on your serve.
''She was just going for it today.''
In the doubles final, Germany's Julia Goerges and the Czech Republic's Lucie Hradecka beat Taiwan's Chia-Jung Chuang and China's Chen Liang 6-3, 6-1.
The final attendance for the tournament was 51,946, up more than 4,800 from last year.