If you're going to convince your boss to open your code, you need to show him how the company will benefit from doing so. Ethical considerations don't enter into it. As an employee, I approve of that. It's his *job* to make the company a ton of cash, and if he doesn't do his job I get smaller pay rises.
As for your last paragraph - that actually means he'll get three bids, one with CPAN and one without from you, and one from someone else where the developer will take from the CPAN but not give back.