Upping the MTU is "easy" on Android (you can do it, but I've had mixed results), but requires HID on iOS. In fact, you cannot trigger an MTU negotiation through CoreBluetooth, so that a single peripheral cannot take over the entire radio. If you control the peripheral firmware, you can obviously request an increase from that end.
The best checklist I've seen is in that presentation:
1. Use Write Without Response
2. Chunk your data based on the connection interval, so you maximize # of packets sent per interval
3. Negotiate a larger MTU
4. Use BLE 4.2 Extended Data Length extensions
[0] - https://asciiwwdc.com/2017/sessions/712?q=core%20bluetooth [1] - https://devstreaming-cdn.apple.com/videos/wwdc/2017/712jqzhs...