The reason the core modules are distributed with perl is that they're core modules: everybody who has perl installed should have those modules avialable, with at least that version, and all perl code can rely on those modules being there.
in reply to Distributing Perl in a Linux distribution
(Linux) distributions can split up the core perl into different packages. Some distros split out the docs, development headers, debug info etc. Some distros also split out (some) core modules. While in theory that's a fine idea, in practice it leads to confusion when people install "perl" and then their code won't run. IIRC RedHat used to split out CGI.pm from the perl core, leading to lots of confusion with people just wanting to run a few CGI scripts.
Anyway, what I personally do when I need an RPM of a CPAN package that overrides a core perl module, is to make sure the new RPM installs with INSTALLDIRS='vendor', or 'site', so it won't overwrite the core versions.
As a last note: there really aren't that many core modules that are also on CPAN and are generally worth upgrading independently of perl itself.