Bayern, who travel to Arsenal next week for their Champions League round of 16 second leg, are on 56 points with RB Leipzig, who drew 2-2 at Augsburg on Friday, in second on 49.
Central defender Martinez gave them a deserved lead in the 25th minute and fullback Bernat doubled it after the restart to make sure of Cologne's first home defeat in the Bundesliga since April 2016.
Bernat then set up substitute Franck Ribery for their third goal in the final minute with Bayern on track for a record-extending fifth consecutive league title.
Bayern coach Carlo Ancelotti left Mats Hummels, Xabi Alonso, Arjen Robben and Ribery on the bench at the start with an eye on the Arsenal match.
But their absence was never felt as Bayern dominated throughout with 20 shots on goal compared to Cologne's six.
Borussia Dortmund, hosting Benfica on Wednesday for their own Champions League match, also made the most of Leipzig's slip-up, closing in to within six points in third place after Bundesliga top scorer Pierre-Emerick Aubameyang scored twice to help them demolish Bayer Leverkusen 6-2.
Gabon international Aubameyang's two goals put him top of the scorers' list with 21 but Dortmund's Marco Reus limped off with a thigh muscle injury just before the break and is ruled out against Benfica.
[caption id="attachment_50506" align="aligncenter" width="768"]
Borussia Dortmund's Ousmane Dembele opens the scoring against Bayer Leverkusen in Dortmund AFP
Fellow Champions League club Leverkusen, who face Atletico Madrid later this month, drop to ninth after losing four of their last six league games.
Hoffenheim fought back from 2-1 down to crush Ingolstadt 5-2 and remain fourth on 41 points, two off Dortmund.
Borussia Moenchengladbach fired three goals past Schalke 04 in 12 minutes in the second half to win 4-2 and climb up to eighth, sending their opponents tumbling to 13th on 27 points.
New VfL Wolfsburg coach Andries Jonker, who succeeded sacked Valerien Ismael this week, failed to inject any new life into the struggling former German champions, who drew 1-1 with Mainz 05.
(Dembele 6, Aubameyang 26, 69, Pulisic 77, Schuerrle 85-P, Guerreiro 90+2) Leverkusen 2
(Volland 48, Wendell 74)
(Cordoba 24) Wolfsburg 1
Cologne 0 Bayern 3
(Martinez 25, Bernat 48, Ribery 90)
(Kruse 75-P, 90+2) Darmstadt 0
(Rudy 27, Szalai 62, 79, Kramaric 77, Huebner 88) Ingolstadt 2
(Cohen 38, Suele 60-og)
(Johnson 28, 64, Wendt 67, Raffael 76) Schalke 2
(Bentaleb 38-P, Goretzka 83)
P W D L GD Pts
23 17 5 1 44 56
23 15 4 4 19 49
23 12 7 4 27 43
23 10 11 2 20 41
22 11 4 7 6 37
22 10 5 7 3 35