The world No 1 committed 62 unforced errors and was broken three times as Berdych of the Czech Republic fought through in just under three hours, ending an eight-match losing streak against the Swiss star. The 16th seed saved eight of ten break points – with seven of those coming in a tense second set – on his way to the quarter-finals and a clash with Fernando Verdasco of Spain.
Rafael Nadal was made to suffer before triumphing 7-6 (7/5), 6-4 over compatriot David Ferrer.
The former world No 1 edged a tight tie break and raced into a 3-0 lead in the second set but Ferrer rallied, winning the following three games before Nadal broke once again to seal a two-hour victory.
The Spaniard will face eighth seed Jo-Wilfried Tsonga after he beat Juan Carlos Ferrero 6-2, 6-2.
Andy Roddick recovered from an awful start to book his place in the final eight. The American, seeded sixth, trailed 1-4 and 0-40 to Germany's Benjamin Becker in the first set as he struggled with his accuracy early on. But the three-time Wimbledon finalist showed his tenacity to take the set to a tie-break, which he won 7-4 before claiming the second set 6-3. Roddick now faces Spain's Nicolas Almagro after he defeated Brazil's Thomaz Bellucci 6-4, 3-6, 7-6 (7-3).
Number five seed Robin Soderling is also through following a 6-0, 6-7 (3/7), 6-2 victory over Fernando Gonzalez. In-form Marin Cilic is out after Verdasco beat the seventh seed 6-4, 7-6 (7/3).
Andy Murray's conqueror, Mardy Fish, is also out after the American was forced to retire while trailing 6-1 1-0 against 13th seed Mikhail Youzhny.