Hi Gareth,
You can try removing HTTP and HTTPS inspection and see if this helps. The traffic will still be inspected at layer 4 through the TCP inspection.
Also, if the traffic is being fragmented into more than 2 packets, this line would need to be adjusted:
ip inspect name InOutCheck fragment maximum 2 timeout 1
Finally, keep in mind that with CBAC, you only need to inspect traffic in 1 direction (the initiating direction). The firewall will then build a stateful session and inspect the return traffic in the other direction automatically. Applying the inspections inbound and outbound on the same interface might be affecting your downloads as well.
-Mike