Firstly, I'll assume your use of CPAN actually refers to the utility cpan (lowercase) rather than the website CPAN (uppercase).
Unicode::UCD is a builtin module (the link is to the 5.12.3 version). cpan will attempt to install the latest version of this module and, no doubt, finds it is dependent on the latest version of Perl (v5.17.4 at the time of writing); this would be why it's trying to install Perl v5.17.4 - at least, that's my best guess.
Both Unicode::UCD and the file it can't find, UnicodeData.txt, were part of the Perl v5.12.3 distribution - they're listed in the MANIFEST. Given the code works fine with your MSWin32 installation, it's possible your openSUSE installation is corrupt; although, that's purely conjecture. I know nothing about openSUSE; I'll leave you to decide if reinstalling Perl v5.12.3 on that OS is a viable option.
If you choose to use Perlbrew, this node may be of interest: perlbrew: moving to a new perl with all current modules