I have always used the method listed in the CPAN FAQ to remove unwanted modules.
It is also possible to remove individual module files using:
rm `perldoc -l Module::Name`
Using the look command in the CPAN shell will drop you into that particular module's build directory so that you can run the installation commands 'manually'
Using something like the following should upgrade modules removing conflicting module versions. Both CPAN and CPANPLUS can be configured to add the UNINST option when running make:
make install UNINST=1