With a penalty shootout looming, Forsberg popped up to volley home superbly with almost the last kick of the game after Hee-Chan Hwang headed a Kevin Kampl cross from the right into the Swedish forward's path.
Leipzig dominated throughout and twice hit the woodwork but were let off the hook late in the first half when Bremen were awarded a penalty only for the decision to be rescinded by referee Manuel Grafe after a VAR check.
The home side's keeper Jiri Pavlenka pulled off several fine saves to keep a clean sheet in regular time but was powerless when Hwang fired Leipzig ahead in the 93rd minute with a clinical finish from eight metres.
Bremen levelled in the 105th minute out of the blue as Leonardo Bittencourt took advantage of Dayot Upamecano's error and steered the ball home from inside the penalty area after rounding visiting keeper Peter Gulacsi.
But Leipzig had the last laugh when Forsberg, who came on for Christopher Nkunku in the 114th minute, twisted in mid-air to plant an unstoppable shot past Pavlenka as the visitors launched their final raid into Bremen's area.
Leipzig will bid to win their first major trophy in the May 13 final in Berlin, having lost the 2019 final 3-0 to Bayern Munich.
German champions Bayern top the Bundesliga with 71 points, seven ahead of second-placed Leipzig in their two-team title race. Leipzig coach Julian Nagelsmann is set to take over at Bayern following the conclusion of the season.