I checked "Content-Disposition" header when I downloaded by IE.
Present, I think that "Content-Disposition" is written as:
header('Content-Disposition: attachment; filename=' . [FILENAME]);
In this case the file that named by non-ascii characters will be broken with IE or Edge.
Can you change that header as below?:
header('Content-Disposition: attachment; filename*=UTF-8\'\'' . rawurlencode([FILENAME]);
Please check RFC6266.
Customer support service by UserEcho