Sweden now have 19 points and all but secured second place, with France later reclaiming top spot with an uninspired 1-0 victory over Bulgaria in Sofia.
Striker Ola Toivonen was hacked down making a clever spin move in the box, and Sweden captain Granqvist slammed home the resulting spot-kick to give the home side the lead in the 10th minute.
Berg made it 2-0 eight minutes later, sweeping the ball home after Mikael Lustig, Emil Forsberg and Toivonen all combined to set him up.
He made it three before half-time, collecting Toivonen's sublime pass, chipping the ball over goalkeeper Jonathan Joubert and nodding it into an empty net, and he completed his hat-trick nine minutes into the second half with a curling shot.
Lustig headed home a free-kick on the hour mark with what proved to be his last touch of the game, running to celebrate with Emil Krafth who was waiting on the sideline to replace him, and Granqvist added a second penalty in the 67th minute.
Berg netted his fourth goal of the night with a looping header in the 71st minute, and Toivonen scored Sweden's eighth with a stunning side-footed volley six minutes later after a superb long ball by Krafth.
Sweden now travel to Amsterdam to face the Netherlands in their final group game, while France host Belarus and Luxembourg are at home to Bulgaria.