Bayern opened the scoring 11 minutes later when Robben struck a powerful finish beyond goalkeeper Igor Akinfeev after being picked out by Muller. Robben nearly made it two shortly after but the Dutch winger was flagged offside when he connected with a Toni Kroos cross.
The hosts improved after the break and almost levelled matters within two minutes of the restart when Honda was played through on goal, but Manuel Neuer came out to collect the ball from his feet.
Bayern doubled their lead 10 minutes into the second half when Gotze jinked his way past several CSKA players and fired a composed finish beyond Akinfeev.
CSKA were awarded a penalty on 61 minutes when Dante was penalised for handball, and Honda sent Neuer the wrong way to reduce the arrears.
Four minutes later Bayern won a penalty of their own after Robben was tripped in the area, with Muller stepping up to restore the Bundesliga side's two-goal advantage.
The hosts came close to pulling a goal back with 10 minutes remaining when Tosic's effort from the edge of the box came back out of the crossbar.
Robben almost added another goal for Bayern on 87 minutes, but his effort was palmed away by Akinfeev.