in reply to printing unicode to STDOUT

[ I'm assuming the HTML entities (e.g. «ü») are really the represented character («ü») encoded using UTF-8 in your source. ]

Remove the ">". That tells open how to open the file. binmode is choking on it.

binmode STDOUT, ":encoding(UTF-8)"; print $s;
use open ':std', ':encoding(UTF-8)'; # binmodes STD* print $s;

By the way, «use Encode;» is not required here.