The fire, which was quickly extinguished, broke out at around 00:40 GMT and affected one room. Six patients in adjacent rooms were moved to other wards of the hospital, the head of the regional fire safety department Vladimir Demirev said.
Two of the men were found dead by firefighters. The other patient suffered heavy burns and was transported to another hospital, where he later died.
The cause of the fire is being investigated, but a cigarette lit by a patient was the most probable cause of the fire, the health ministry said in a statement.
There are more than 8,000 COVID-19 patients, including 700 in intensive care units, being treated in Bulgarian hospitals as the Balkan country votes in its third parliamentary election this year.
Bulgaria has the lowest vaccination rate in the European Union and one of the highest COVID-19 mortality rates in the bloc, with record daily infection numbers throughout October stretching its hospitals.