PostgreSQL pg_dump -E encoding option not working
Forcing a BOM and UTF-16 encoding for redirected output can be done somehow by Windows shells (personally I've experienced this with Powershell and Windows 10).
See e.g. Resolve UTF-8, UTF-16, ASCII inconsistencies for some context.
In the case of pg_dump, using the -f option to specifiy the output file instead of a shell redirection seems like a good idea against that sort of problem. From the manual:

-f file
--file=file
Send output to the specified file. This parameter can be omitted for file based output formats, in which case the standard output is
used.