Williams, who beat her top-ranked younger sister Serena to reach the Rogers Cup final, where she lost to Poland's Agnieszka Radwanska, looked like she might be ready to make another run in Cincinnati after taking the opening set in a tiebreak.
However, the seven-times Grand Slam champion could not convert any of her four break chances in the second while Safarova converted her one and only opportunity to level the match.
Czech Safarova, a Wimbledon semi-finalist, stepped up the pressure in the third with two more breaks to clinch her first win in five career meetings against the 34-year-old American.
"It was definitely a quick turnaround, maybe would have been a little better to play a little later in the day," said Williams, back in top 20 for first time since March 2013 following her runner-up finish at Montreal.
"But she just played so well. No matter what shot I hit she hit a winner, or if I hit it really deep she somehow managed to control it down the line."
Fifth seed Maria Sharapova needed three sets to dispose of American Madison Keys in her evening second round contest, finally prevailing 6-1 3-6 6-3 in just under two hours.
Wozniacki, a title winner last month in Turkey, was a class above the world number 31 Zhang, who was bounced out in the first round of her previous four tournaments.
Halep, playing her first match since moving to a career high world number two, saved seven of nine break points on the way to victory in 87 minutes.
Earlier Spanish 15th seed Carla Suarez Navarro, an upset winner over Sharapova in Montreal, was also made to work for her spot in the second round, needing three-sets to tame Bulgarian Tsvetana Pironkova 6-3 1-6 6-2.
Also in the first round, American Sloane Stephens beat German Andrea Petkovic 6-3 6-3 and 14th seed Italian Sara Errani beat qualifier Yanina Wickmayer 7-5 3-6 7-6(2).
Cincinnati Open results
2-Simona Halep (Romania) beat Kirsten Flipkens (Belgium) 6-4 6-2
12-Caroline Wozniacki (Denmark) beat Zhang Shuai (China) 6-2 6-3
5-Maria Sharapova (Russia) beat Madison Keys (U.S.) 6-1 3-6 6-3
Sloane Stephens (U.S.) beat Andrea Petkovic (Germany) 6-3 6-3
Svetlana Kuznetsova (Russia) beat Camila Giorgi (Italy) 6-4 6-7(4) 6-3
Sabine Lisicki (Germany) beat Roberta Vinci (Italy) 6-3 2-6 6-2
Annika Beck (Germany) beat Garbine Muguruza Blanco (Spain) 6-3 2-6 6-3
14-Sara Errani (Italy) beat Yanina Wickmayer (Belgium) 7-5 3-6 7-6(2)
Barbora Zahlavova Strycova (Czech Republic) beat Mona Barthel (Germany) 7-5 6-0
16-Lucie Safarova (Czech Republic) beat Venus Williams (U.S.) 6-7(2) 6-3 6-4
Ekaterina Makarova (Russia) beat Daniela Hantuchova (Slovakia) 6-2 6-2
Zarina Diyas (Kazakhstan) beat Irina Begu (Romania) 7-6(4) 7-6(5)
15-Carla Suarez Navarro (Spain) beat Tsvetana Pironkova (Bulgaria) 6-3 1-6 6-2
Christina Mchale (U.S.) beat Nicole Gibbs (U.S.) 4-6 6-3 6-1
- Sports & Recreation
- Maria Sharapova
- Zhang Shuai
- Caroline Wozniacki