Hey @Owen_Williams,
This definitely makes sense!
Did you try to separate the motor.loopFOC() and motor.move(). Run loopFOC() in each loop() and move() with much lower frequency. This should do more or less the same thing.
I have done the same thing for my inverted pendulum project. You can see the code in: