The man, referred to by the initials B. S in the reports, poured a bottle of lighter fluid over himself before setting himself alight.
The flames were put out by police and the man, who reportedly has a Swedish passport but is originally from Syria, was taken to the Sant’Eugenio hospital in the capital with third-degree burns on his face, chest and arms, the reports said.
It was not clear whether he was one of the hundreds of Syrian asylum seekers who have sought refuge in Italy after crossing the Mediterranean by boat over the past few months.
Many find themselves trapped in Italy’s notoriously slow asylum seeker system or sleeping rough in the city’s slums to avoid detection.