Please test Win32::Symlink. I can't get it to work for files, only for directories. That is exactly the sort of crippled Unicode support under Windows that I see time after time.
I don't see any general Perl Unicode support in the other few modules you mention. I don't see how to pass a Unicode path to any of the hundreds of Perl modules that haven't been designed for Unicode on Windows. For example, is there any way to pass a Unicode path to MP3::Tag->new?
Hard links can only be created on the same volume as the target. They can't be used on a volume that the user doesn't have write access to, nor obviously on optical media, so they aren't a general solution.