0. Повесь регулировку ШИМ на таймер.

Тормозит вывод потому, что:
1. сдвиговый регистр не очень предназначен для быстрого переключения отдельных выводов. Думаю, что было бы лучше использовать хотя бы 4 ноги для управления индикатором (отдельный вывод для тактовой ноги индикатора, если такая есть).
2. В торможении видимо ОЧЕНЬ сильно участвует стандартная функция shiftOut, реализованная через стандартную digitalWrite. Запись одного бита в 595-й регистр - это три digitalWrite, каждый из которых выполняется порядка 60 тактов. Запись байта - это 26 вызовов digitalWrite. Запись одной команды в LCD - 6 shiftOut...

Короче такие тормоза из-за реализации данной библиотеки. Если бы ее просто переписать с использованием более правильных функций управления ногами, ускорилось бы все раз в 20...