Chelsea duo Eden Hazard and Romelu Lukaku were on target for the Belgians.
Coming after last week's 5-1 drubbing of Luxembourg, the result offered further proof of the side's wellbeing ahead of their Group H assignment in Brazil against Algeria, Russia and South Korea.
Against a Swedish side missing their emblematic striker Zlatan Ibrahimovic, Belgium dominated throughout.
Lukaku, on loan to Everton last season, set Marc Wilmots' side on the path to victory in the 34th minute, with Hazard doubling up after the break.
Belgium have one final warm-up scheduled, against Tunisia in Brussels next Saturday.