CloudFlare's Universal SSL certificates used to be shared between multiple unrelated accounts by SAN stuffing, so back then they definitely wouldn't have given out the private key. I think this may have changed since I last saw a CloudFlare certificate with >100 SANs for various unrelated sites on a client's certificate around 3 years ago. The certificate from the post is not shared, and I can't find any other Universal SSL certificates that are shared now. This support article still suggests they're shared, however [0].
They likely didn't give clients the private keys before simply to save costs by reducing the number of certificates they had to issue. Now that they're not sharing certificates, it's probably just a way to extract a little more money from customers.