バッチファイルからUTF-8文字列を出力するとやはり化けたので
WindowsではなくPHP側の問題かと思って検索したらありました

Windows版 PHP 7.1 で日本語パス(パス文字列のエンコーディング)が
対応されることによる影響
https://qiita.com/algo13/items/2810aacef69d6fb8fd0f