Batshuayi quickly restored Dortmund's lead just 15 minutes after his introduction and the Belgian netted a last-gasp victor having seen Danny Blum level matters just three minutes earlier in stoppage time.
The winning goal was scored by Michy Batshuayi in the 94 minute to see Dortmund register a 3-2 win and move up to third on the table with 45 points while Frankfurt are in fifth place with 42 points.
"We lost today because Dortmund scored one more goal than we did", Boateng said.
Not to be upstaged, Batshuayi scored two minutes later to restore the home side's lead after being played through by Pulisic.
However, late last week, Dortmund already secured a crucial signature when Germany global Marco Reus signed a contract extension.
Kevin-Prince Boateng almost scored with a clever backheel just after half-time, but was denied by Dortmund goalkeeper Roman Burki.
And that's precisely what BVB produced in the second half against Frankfurt as the absence of impressive midfielder Mahmoud Dahoud - substituted as a precaution after picking up a yellow card in a tenacious first-half display - took its toll.
After joining Dortmund in January, Batshuayi started in eight consecutive games after just four starts for Chelsea.
Jose Mourinho: Marcus Rashford was lacking in confidence prior to Liverpool game
In certain games and situations, the Portuguese head coach needs to take the shackles off and let the Frenchman run the show. Sanchez has just one goal in nine games in a United shirt.
But Dortmund haven't set the world alight under the former Cologne coach, who replaced Peter Bosz before Christmas.
Dortmund finished strongly with Reus drawing a good save from Lukas Hradecky, who might be a teammate next season. The Serbian forward got his head to Jonathan de Guzman's free kick.
Then Blum thought he'd salvaged a draw with his equalizer, but Batshuayi had the final say, stopping the ball with his right foot and turning to smash it in with his left.
"I wasn't angry [about not starting]", he said.
Stuttgart held Leipzig to a 0-0 draw to stay unbeaten in six Bundesliga games under new coach Tayfun Korkut.
The draw extends Leipzig's winless run to four league games, and leaves them four points behind the Champions League spots.
Timo Werner was booed on his return to his home-town club but couldn't ram the jeers back down the throats of the home fans.
Arguably the best chance of an uninspiring game fell to Mario Gomez, who headed wide for hosts Stuttgart with 10 minutes remaining.