The LT6220 is not doing anything useful. Removing it will improve performance of the current control loop and make frequency compensation easier.
The AD8031 is much faster than required for this application. If a single supply precision part is required, then the LT1013 is both inexpensive and fast enough given the external compensation shown in the schematic.
If you used the AD8031 for higher slew rate to lower switching time between current and voltage control, then the external frequency compensation is defeating that reason. A slightly different configuration which clamps the output of the inactive error amplifier may be necessary if you want the fastest switching between current and voltage control.