Playing without a recognized striker, City reeled off its sixth straight league win and eighth in all competitions, one short of the club record.
Silva scored at the 49- and 61-minute mark to put City in command following a listless first half. Yaya Toure had the third goal with 10 minutes remaining. In another game, rival Manchester United's six-match win streak ended with a 1-1 tie at Aston Villa.
City manager Manuel Pellegrini said: "It was a very good win ... I enjoyed the way the team worked the whole week — to work in a different way without strikers."
Villa, without a victory over United at Villa Park in 18 games since 1995, went ahead thanks to a spectacular first-half goal by Christian Benteke. But the Aston squad was pushed back in the second half when Radomel Falcao tied it with a header and played the final 25 minutes with 10 men after Gabriel Agbonlahor was sent off.
Both Chelsea and City have 39 points but City has played one more game than Chelsea, which travels to Stoke City on Monday. Chelsea tops the league with a superior goal difference of 23 to City's 22 while United remains third with 32 points.
West Ham stayed fourth with 31 points after a 2-0 win against Leicester. The Hammers are two points ahead of fifth-place Southampton which ended a run of five defeats with a 3-0 victory over Everton.
Tottenham Hotspur also enjoyed a home win, beating Burnley 2-1 to move up to sixth — ahead of north London rival Arsenal, which visits Liverpool on Sunday, when Newcastle hosts Sunderland in a north-eastern derby.
Southampton played with great purpose and urgency at St Mary's where a Romelu Lukaku own goal and efforts from Graziano Pelle — his 11th club goal of the season — and Maya Yoshida secured the points.
Tottenham's victory came on goals from Harry Kane — now with 14 for Spurs — and Erik Lamela, his first. Ashley Barnes replied for Burnley.
The most dramatic individual and team performance saw Queens Park Rangers move out of the relegation zone with a 3-2 victory over West Bromwich Albion at Loftus Road.
QPR owed its triumph to the success of striker Charlie Austin, whose three goals enabled the hosts to recover after falling 2-0 down in the first half.
Albion raced into a two-goal lead through Joleon Lescott and Silvestre Varela, but Austin hit back with a penalty before adding the tying goal and then an 86th-minute winner.
Austin has 11 goals this season and helped QPR rise from 18th to 15th in the standings.
Burnley replaced QPR in the bottom three, slipping to 18th, while Hull City stayed 19th after a 1-0 home defeat against Swansea.
Ki Sung-yeung's early goal, thanks to an involuntary deflection off his wrist, proved to be decisive as the Tigers' run without a win was extended to 10 games.