Belgium substitute Divock Origi grabbed a winner two minutes from time against Russia to take his side into the last 16.
Alexander Kokorin missed the best chance of a lifeless opening half, heading wide from six yards.
Substitute Kevin Mirallas hit a post with Belgium’s first shot on target with six minutes remaining.
But Origi turned in from Eden Hazard’s cross to take Marc Wilmots’ team into the knock-out phase.
Russia’s hopes of following them into the last 16 now hinge on their final group match against Algeria.
Fabio Capello’s side were better than in their1-1 draw with South Korea but still lacked a cutting edge and Belgium found a way to win despite an unconvincing display.
Origi, 19, impressed when he came off the bench in the opening 2-1 victory over Algeria and, once again, the Lille forward did well when he replaced Romelu Lukaku – who appeared far from happy with the decision – early in the second half.
They may have six points from two matches, but Belgium – who lost Arsenal defender Thomas Vermaelen to injury – will have to play far better to continue their progress.