I am aware Cloudflare has a security focus, but considering it also provides load balancing, why should I have it point to yet another load balancer e.g. AWS ELB?
CloudFlare has a CDN (content distribution network) offering that provides DNS, security and routing features. They also have a load balancing offering which is broadly similar to AWS's load balancers.
AWS ELB is a load balancer. ELB supports failover between AZs and integrates with auto scaling. ELB has AWS Shield basic integrated, which provides some security features, such as DDOS protection.
ELB and CloudFlare provide similar capabilities, once AWS WAF is taken into account. CloudFlare could arguably be regarded as simpler and easier to use. You can mix and match service offerings across CDN and load balancers, though I suggest the AWS load balancer is probably best to use if you're balancing EC2 resources. CloudFront + AWS WAF / CloudFlare can easily be swapped out.
You should use ELB in order to have access to load balancing across multiple AZ, and auto scaling to manage your load.