Hey there, LetsEncrypt SSLs are high-grade SSL certificates that pass https://www.ssllabs.com/ssltest/ standards. If you have letsencrypt ssl that is installed perfectly you will get a+ grade domain validates SSL. This is more than enough and it also work seamlessly with http2 and other latest protocols and http strict transport protocol.
On the other hand cloudflare is not completely end to end encrypted. IT gives flexible ssl , full ssl and origin pull ssl. In these options only felxible ssl is 1 click. And easy to setup for normal users, other methods need technical knowledge and most users cannot install origin pull certificates, because they do not know how to setup it properly.
Now, flexible ssl enrypts traffic only in between your users browsers and cloudflare. But end to end encytpion means, user<->cloudflare<->yoursever all traffic must pass in enrcypted layer. So, cloudflare is not preferable to use for SSL from security point of view. Another thing is there are lots of issues with cloudflare
1. If you use cloudflare dns and cdn and ssl then https://yourdomain.com/cpanel will result in broken interface. As cloudflare caching does not work properly with cpanel.
2. In some countries or regions, cloudflare servers are not optimal (free plan) and they perfom much slow than your original server.
3. Felixble SSL does not encrypt end to end communication, so man in the middle attacks are still possible
4. Cloudflare offer shared SSL certificates in free user plan, so its not as good ad they paid plan SSL.
5. If you are wordpress user and looking to optimize for Google page speed score, you will find it difficult to use plugins like w3tc and cloudflare in combination with https..seems to not work as expected as per our testing.
If you have letsencrypt ssl installation offered by your web hosting company. Use letsencrypt and enjoy the best security for free.
Thanks