Substitute Tomas Necid and Jaroslav Plasil scored the second-half goals as Ivan Hasek's team did their bit, but they were frustrated by events elsewhere in Group 3.
Slovenia's 2-0 triumph in Bratislava kept them two points clear of the Czechs, who lie third. Hasek's men may be confident of getting a home result against Northern Ireland on Wednesday, but they are now also dependent on Slovenia slipping up against group minnows San Marino - who have lost all nine of their matches, scoring just one goal and conceding 44.
Hasek sprung a surprise by naming Heerenveen striker Michal Papadopoulos in his starting line-up alongside Milan Baros, while incoming Poland coach Stefan Majeski made seven changes from last month's defeat by Slovenia.
An uneventful first half brought little in the way of goalmouth action, though home goalkeeper Petr Cech made a good close-range save to prevent Ireneusz Jelen from breaking the deadlock in the 33rd minute.
Experienced Galatasaray striker Baros was denied an opener for the Czechs four minutes later by an offside flag as the teams reached the interval goalless.
Necid was introduced at half-time in place of Papadopoulos and made an impact within six minutes with the opening goal.
Captain Tomas Rosicky's measured through-ball picked out the CSKA Moscow frontman and he held off two defenders to finish via the inside of an upright.
Cech made a stunning save from Jelen's header shortly before the hour to preserve the hosts' lead.
Arsenal star Rosicky, recently recovered from a long-term hamstring problem, continued to pull the strings for the Czechs, but Baros failed to capitalise on another fine pass from the midfielder when he was denied by goalkeeper Wojciech Kowalewski after going through.
Midfielder Plasil did better, though, when he headed past the goalkeeper after being picked out by Zdenek Pospech's right-wing cross in the 73rd minute to double the Czechs' advantage.