Как программно (через arduino) изменять направление вращения бесколлекторного двигателя?
поставить контроллер который умеет менять направление вращения.
либо разобраться в документации. смена направления несложная задача - даже простейшие контроллеры это умеют.
У меня есть чувство, что вы выбрали изначально не очень подходящую микросхему и пытаетесь теперь через различные костыли ее  использовать. Не надо так. Возьмите лучше подходящую под ваши требования.
Например вот даташит на неплохой вариант. Есть пин, задающий направление вращения и PWM вход для установки скорости. 3 евро за штуку - ну не такая уж большая сумма.