I think if CentOS were selling support contracts, that would be pretty bad. RedHat makes their money on support contracts. By using CentOS, you're more likely to switch to RedHat when you need to pay for a bunch of support.
It feels a little bit more moral to load CentOS on a bunch of systems, than to load Red Hat on them and only pay for one support contract. As an analogy, Microsoft probably prefers people to pirate Windows than to switch to Linux/Chromebook.
It's been a while since I looked, but I believe a few CentOS developers get paid by redhat, or if not, at least have alternate @redhat.com addresses. My impression has always been that CentOS and Red Hat have a good enough relationship that CentOS would not want to jeopardize that. Additionally, Red Hat benefits from having one of, if not the most common server distro (the numbers are hazy) based on their product.
The truth is, Red Hat is the only linux distro I can think of (besides maybe SuSE, but I don't know much about it) that has really made a significant push to take over the enterprise market from Microsoft (and now they've moved to trying to do the same thing to VMWare).
It feels a little bit more moral to load CentOS on a bunch of systems, than to load Red Hat on them and only pay for one support contract. As an analogy, Microsoft probably prefers people to pirate Windows than to switch to Linux/Chromebook.