Cengiz Under's strike and a string of Alisson saves had kept Roma in the tie in the 2-1 away first-leg defeat, allowing Eusebio Di Francesco's men to edged to victory in the second leg and reach the quarter-finals despite a dismal display in which Dzeko's winner was scarcely deserved.
Indeed, despite needing only a draw to themselves reach the last eight, this was no backs-to-the-wall job for Paulo Fonseca's Shakhtar as it sought to enjoy itself at Stadio Olimpico.
An assured away performance was led by Manchester City target Fred as Shakhtar had the better of the opening 45 minutes, pressing the Serie A side when out of possession and then attacking at speed.
Chances were few and far between, though, and a lack of cutting edge in the final third was ruthlessly punished by Dzeko seven minutes after half-time.
Shakhtar's desperation for the away goal it now required left gaps in defence and Ivan Ordets was dismissed for halting a late Roma breakaway, Alisson holding on for a fourth consecutive home Champions League clean sheet to seal a place in the draw for the last eight.