Ivan Perisic opened the scoring from the spot after just 12 minutes at Stadio Olimpico, before Lazio's Ciro Immobile equalised with a penalty of his own after the break.
Controversy followed as Felipe Anderson tapped in on the rebound from Immobile's strike with nine minutes remaining, with Inter's Federico Dimarco seemingly down on the ground and injured in the build-up to the goal.
Sergej Milinkovic-Savic added a third with a late header as Inter's unbeaten start to its title defence, under the guidance of former Lazio boss Inzaghi, abruptly ended. The result leaves it four points behind leader Napoli, which hosts Torino on Monday (AEDT).
Lazio's Luiz Felipe was red-carded after the full-time whistle for an altercation with former team-mate Joaquin Correa as tempers flared after the conclusion of the game.