I use CloudFlare and SSL perfectly fine without issue. Without reading through the whole topic, here's how to set this up.
Install an encryption certificate in your host in cPanel. They should have the option for the free Lets Encrypt certificate. Once that's installed go to your board's ACP. Under Server settings: Server protocol: https://, Server port: 443, cooking setting: enable secure cookie. Now go to CloudFlare, not in your host, but their website. DO NOT use CloudFlare in cPanel. It's a major F up. You want to use their website and their website ONLY! Go under the SSL options in CloudFlare and set up full strict SSL or what ever it's called. That should do it. From that moment on all URLs will have HTTPS:\\
You may need to set up a page rule in CloudFlare to make sure HTTP goes to HTTPS. You get three page rules for free. Another page rule you could setup is to cache the styles folder. I wouldn't setup other folders for caching. Now you may have mixed content on your board. Being the nature of forums that's inevitable. So make sure you look in CloudFlare under the Encryption page and turn on mixed content or what ever it's called. Now all content should be encrypted. How CloudFlare prevents mixed content is with their use of the HTTPS Everywhere project and something else. So long as URLs on your board have an HTTPS availability instead of HTTP, CloudFlare will automatically fetch those URLs instead keeping all content on your board served over SSL/TLS.
Now, using CloudFlare is half the battle. It's main feature is preventing a DDoS attack. But you need to use CloudFlare and set things up in such a way to prevent your origin IP from being known. One of these involves never using your host's E-mail. So the MX record in CloudFlare is out of the question as the MX record will expose your origin IP in a hurry. So what that means is you have to use a third-party E-mail service. Since my board isn't very big I use Gmail. If I grow I plan on using Namecheap's E-mail offering. I do have a dedicated E-mail with them already for resume and work purposes. It's only $10/year if I can remember right. Then your yearly domain costs.
Another factor is that if you setup CloudFlare after your host gave you an IP then your IP is now known. Especially with domain history websites. So after you setup CloudFlare you would have to have your host give you a new IP and then you enter that in your CloudFlare DNS settings.
If you use a shared account DO NOT get a dedicated IP. Doing so will expose your origin IP. Why? Because there's a tool that can scan the whole IPv4 space on the Internet in about 45 minutes and find your domain. To combat that stay hidden with an IP that's shared among other users in your shared hosting account. If use use a VPS then you need to block all IPs except CloudFlare's and maintain CloudFlare IPs as they change. So you need to stay abreast of their IP changes which isn't all that often.
I would not use a subdomain on CloudFlare. I can't remember how, but it will expose your origin IP. I would also not allow the use of remote avatars. I don't even allow gravatar. Reason being is that a remote avatar can fetch your origin IP.
That's about it. You don't have to do all that, but if you truly want to benefit from what CloudFlare offers in security you'll do what I outlined. Just remember that when you work on your board or update it you disable CloudFlare and purge not only its cache, but your board's cache as well. You now have in effect two caches.
Now I need to squeeze a squid. Ran out of ink.