A reasonable question. However, I'm not sure how hard it would be to patch cpanm so that it uses a custom working directory. And it would require thorough testing on many systems, while running cpanm as root is probably not so common. Cpanm is for *not* having to run it as root after all!