However, Liverpool's hopes of staying top of the standings were dashed as City came out for the second half looking more like champions, breaking the deadlock through Algerian forward Mahrez in the 53rd minute.
That opener settled City's nerves with the hosts scoring a second 12 minutes later as Foden's effort from distance was helped past Brighton goalkeeper Robert Sanchez by a deflection.
With Brighton beaten, Silva added a late third to seal the win that moved Pep Guardiola's side onto 77 points from 32 games. They are one point ahead of Liverpool as they seek a fourth title in five years.
"We had to win 14 games in a row to win the title before," Guardiola said. "If we drop points they (Liverpool) will be champions, if we win all our games we will be champions.”
"We are now mathematically sure of qualification for the Champions League (next season). Now we know what we have to do."
Guardiola's side had been the overwhelming favourites to win Wednesday's match given that Brighton had lost eight of their previous nine league games against City, conceding 27 goals in the process.
But the visitors travelled to Manchester having beaten top-four chasing duo Arsenal and Tottenham Hotspur in their last two matches – both away from home.
Just had they had done in those hard-earned victories, Brighton set about frustrating City early on, restricting the hosts to efforts from a distance.
Mahrez wasted City's best first-half chance to score as he delayed his shot too long after Brighton keeper Robert Sanchez had left his goal vacant, before captain Kevin De Bruyne drilled just wide.
Whatever Guardiola said at the interval worked, as soon enough a rampaging run from De Bruyne pegged Brighton back, with Mahrez on hand to fire home the loose ball.
It was Mahrez's 23rd goal in all competitions this season -only Liverpool's Mohamed Salah has scored more (30) among Premier League players.
Foden then marked his 50th Premier League start for City with a fortunate second, before Silva got in on the act eight minutes from time, arrowing a fine finish into the bottom corner.
"You have to be perfect here to get anything out of the match and we weren't quite there in the end," Brighton coach Graham Potter said.
"Even though they got a bit of fortune with their goals, we have no complaints with the overall result."