З 13 березня 1944 командував 33-й армією, з 12 квітня — командував 2-м Білоруським фронтом. Але вже за два місяці його знято з посади стараннями члена Військової ради фронту Л. З. Мехліса «за станом здоров'я». З 6 серпня командував 4-м Українським фронтом. Був задіяний у проведенні Львівсько-Сандомирської і Східно-Карпатської операцій, війська його фронту визволили Західну Україну і Закарпаття від німецьких загарбників. Однак через невдалий початок наступу військ фронту в Моравсько-Остравській операції директивою Ставки ВГК від 17 березня 1945 року був звинувачений у непідготовленості наступу і в тому, що не доповів про ситуацію військ фронту Ставці ВГК. Резолюція Ставки ВГК була такою: «Генерала армії Петрова І. Є. зняти з посади командувача військами 4-го Українського фронту за спробу обдурити Ставку щодо справжнього стану військ фронту, не готових повністю до настання в призначений термін, в результаті чого була зірвана намічена на 10 березня операція. Генералу армії Петрову після здачі військ фронту прибути в розпорядження Ставки»