Inter, who were looking to return to the top, led through Ashley Young’s volley – his first goal since moving from Manchester United last month.
But Serie A top scorer Ciro Immobile levelled with a penalty after he was fouled by Stefan de Vrij.
And Sergej Milinkovic-Savic’s low finish from 14 yards out gave Simeone Inzaghi’s Lazio victory.
It was only a second league defeat this season since Antonio Conte took over at Inter – who ended with five 2019-20 signings from the Premier League on the pitch.
Things were looking bright when veteran English wing-back Young scored after Thomas Strakosha parried Antonio Candreva’s shot.
But Immobile levelled with his 26th Serie A goal of the season and Milinkovic-Savic, who earlier hit the bar from 30 yards, settled the game.
Inter had a late goal correctly ruled out, Lautaro Martinez was offside when he headed in Young’s cross.
Juventus took top spot earlier on Sunday with a 2-0 win over Brescia.