Stoner's absence effectively opened up a place on the podium and, starting from a MotoGP best of second on the grid, Crutchlow made the position his own throughout.
Team-mate and future factory Ducati rider Dovizioso - seeking his sixth podium of the year - kept Crutchlow in sight for much of the race, but the Briton held his nerve and pulled away in the closing stages.
Crutchlow's podium ended a twelve-year drought for British riders.
Spies had yet another disastrous race, dropping back to 14th after a technical problem on the opening lap, later diagnosed as a slipping clutch.
The Texan then regained pace and began moving up the order, until he crashed out with ten laps to go, marking his third non-score in a row.
Honda LCR rookie Stefan Bradl, whose father won the 1991 250cc Brno race, rose from seventh on the grid to fifth, after getting the better of Bautista and then Rossi.
Rossi, the lone factory Ducati rider due to Nicky Hayden's Indianapolis injuries, began the race from a season-best sixth on the grid.
Despite his Desmosedici spewing out smoke in the early laps, Rossi briefly got ahead of Dovizioso, but Rossi couldn't keep pace and finished 34.5s from Pedrosa.
A further 30s behind, Randy de Puniet claimed top CRT honours with a creditable eighth, having finished almost four-seconds clear of home hero Karel Abraham on the Cardion AB Ducati.
The second all-Spanish last lap battle was between de Puniet's team-mate Aleix Espargaro and Toni Elias for tenth. Espargaro got the upper hand by less than 0.1s after a late pass.
Former Brno MotoGP podium finisher Elias was standing-in for the injured Hector Barbera at Pramac Ducati for the third race in a row.