Conclusions
CloudFront ★★★★☆
CloudFlare ★★★☆☆
AWS CloudFront blown CloudFlare out of the water when it comes to outbound direction (origin->CDN->client) throughput. It worth to mention CloudFront consistently utilized 100% of my available bandwidth which is very impressive.
CloudFlare is more superior at inbound direction (client->CDN->origin) traffic, but it didn’t utilize full bandwidth (about 67% in average, inconsistent across runs) thus falls short comparing with CloudFront’s lead in outbound direction.
As for latency, despite CloudFlare won by a good margin on paper, I tend to take the numbers with a grain of salt. Ping test implementation in Librespeed is based on repeating HTTP calls. There’re simply too many variable can play on the results — cache, connection reuse, TLS settings and such. Therefore the latency results from Librespeed aren’t as reliable as speedtest.net, where uses a WebSocket based implementation.
Please note: the test is done from my home internet to the CDNs. It only represent my ISP in my location. The results can drastically different in other settings.
Methodology
Speed tests are ran agains a Librespeed instance deployed in the LAN. Librespeed is a web based speedtesting tool, similar to speedtest.net. The testing traffic originated from testing laptop needs to first flow out of the LAN, reach the CDN provider, then be proxied back to the same LAN where Librespeed runs.

Because each HTTP request/response has to go in AND out the LAN the bandwidth would be bound the min(upload, download) of the LAN bandwidth, which is 100Mbps in this case.
All testing datapoints can be found below. I also ran in-LAN Librespeed test as well as speedtest.net just for reference.

Data
| Route | DL/Mbps | UL/Mbps | Ping/ms | Jitter/ms |
| CloudFlare | 43.3 | 100 | 118 | 83.6 |
| CloudFlare | 55.4 | 65.4 | 38.4 | 7.1 |
| CloudFlare | 65.5 | 38 | 41.7 | 7.35 |
| CloudFlare | 62.9 | 64.3 | 40.4 | 17.8 |
| CloudFront | 104 | 12.9 | 134 | 113 |
| CloudFront | 114 | 12.1 | 155 | 187 |
| CloudFront | 109 | 35 | 41.1 | 34.1 |
| CloudFront | 96.3 | 16 | 130 | 140 |
| Lan to Lan | 722 | 227 | 2 | 0.54 |
| Lan to Speedtest.net | 478.49 | 89.08 | 18 | N/A |
| Route | DL/Mbps | UL/Mbps | Ping/ms | Jitter/ms |
| CloudFlare | 56.775 | 66.925 | 59.625 | 28.9625 |
| CloudFront | 105.825 | 19 | 115.025 | 118.525 |