Kroos, who turns 20 on January 4, scored the first and last goals of the game as Leverkusen wrestled back control of the German league from Schalke, who had briefly taken over the lead on Friday night after their 1-0 win over Mainz.
“It was a completely justified win, but after we went 1-0 up, we then handed the match to our opponents,” said Kroos, who is on loan from Bayern Munich.
“But we turned things around and we fought our way back into the match. It was great to get the win.”
The 19-year-old opened the scoring on 18 minutes after a pass from ex-Liverpool defender Sami Hyypia but goals from Gladbach’s Roel Brouwers and Brazil defender Dante put the guests ahead.
Swiss striker Eren Derdiyok equalised on 60 minutes for the hosts before Kroos scored his second after Germany striker Steffan Kiessling found him on the edge of the penalty area.
The teenager drilled home the winner on 69 minutes to leave his side on top going into the winter break.
Bayern Munich stay third and were ruthless against bottom side Hertha Berlin in a 5-2 rout at Munich’s Allianz Arena.
Bayern’s Belgium defender Daniel van Buyten produced a pin-point accurate header on 16 minutes before Mario Gomez bagged his sixth goal in seven games when he converted a pass from Germany team-mate Philipp Lahm on 31 minutes.
Gomez then turned provider when he set up Dutch star Arjen Robben on 33 minutes before rising star Thomas Müller gave Berlin goalkeeper Jaroslav Drobny no chance to make it 4-0 on 60 minutes.
Hertha’s Adrian Ramos and Raffael scored consolation goals on 71 and 90 minutes and Bayern’s Ivica Olic hit his side’s fifth on 77 minutes.
But Berlin are still relegation candidates as they finish the first half of the season with just six points and are six points adrift at the foot of the table.
Dortmund went fourth after they celebrated their 100th anniversary as a club with a 1-0 win at home over Freiburg.
The hosts took the lead when Argentina striker Lucas Barrios scored his ninth goal in ten games when he headed past Freiburg’s French goalkeeper Simon Pouplin on 19 minutes.
Defending champions Wolfsburg were held to a 2-2 draw by Eintracht Frankfurt to move eighth in the table, while Bochum pulled away from the relegation zone with a 3-2 win thanks to a late free-kick from defender Christian Fuchs.
On Friday, a first-half goal from Peruvian star Jefferson Farfan had put Schalke top after a 1-0 win over Mainz.
Farfan notched his sixth goal of the campaign after taking a neat pass from German under-21 international Lewis Holtby, but Leverkusen took back the lead less than 24 hours later.