Grealish, handed his first start in six matches, lasted just 21 minutes of the holders’ largely straightforward last-16 first-leg success at Parken Stadium before being forced off with a groin injury.
Silva, who put City into a 2-1 lead just before the break with a fine flicked finish, took a knock to the ankle late in the game.
The double blow comes after Josko Gvardiol missed the game with an ankle injury and Mateo Kovacic was also unavailable.
City manager Guardiola said: “It’s something muscular with Jack, his groin.
“He felt it on the grass, started to complain. The players can feel it immediately if it’s muscular. It’s a pity, he’s gutted.
“He wanted to continue but we didn’t want to make the damage even worse. We’ll make tests tomorrow.
“Bernardo has a big knock in his ankle and Josko is out two to three weeks. Kova is ready to come back.”
The injuries took the gloss off what was a mainly comfortable night for City.
They took an early lead through Kevin De Bruyne and, dominant in all departments, should have led by more before Magnus Mattsson levelled after an Ederson error.
Silva restored the lead and Phil Foden gave the scoreline a more realistic look in stoppage time.
Guardiola said: “It was really, really good. I’m so proud we played at that tempo. It was perfect.
“We were patient in the right moments but it’s not done. I know how difficult it is.
“It’s not decisive but a good result. Hopefully we can finish at home in front of our own people and go to the next round.”
Danish champions Copenhagen had not played competitively for two months due to their league’s winter break and their rustiness was evident.
Coach Jacob Neestrup said: “Of course it’s going to be difficult, but now we have three games in the Danish league where we need to get results. Then we take the away game, where we try to do our very, very best.”