Bologna thought they had taken the lead in the 13th minute through Mattias Svanberg but, after studying the pitchside monitor, the referee disallowed it for a foul on Lucas Leiva in the buildup.
Lazio, looking for their second Serie A win of the season, finally went ahead nine minutes after halftime. Luis Alberto dispossessed Danilo, then nutmegged Svanberg before blasting his shot past Lukasz Skorupski.
Mohamed Fares brilliantly set up the second in the 76th minute when he acrobatically prevented Vedat Muriqi's header from going out of play and Ciro Immobile, Serie A's topscorer last season, scored from close range.
Lorenzo De Silvestri pulled one back for Bologna in the 90th minute but could not prevent them from slumping to a fourth defeat in five games. Lazio, fourth last season, are 10th with seven points.