SPI потянет, но, возможно, не на максимальной скорости из-за возросшей емкости линии. Но всегда можно поставить на линию один-два буфера типа '125 и разгрузить порт.
SPI на прерываниях на avr никогда не делал, смысла не вижу.
Если работать на максимальной скорости, то байт уходит за 16 тактов -
этого едва хватит, чтобы нормально войти-выйти из прерывания :-)
Насчет алгоритма обрати еще внимание на I2C-шину. Скорость будет гораздо
ниже (что не критично), зато получишь автоматом адресацию/синхронизацию.
Командуешь 'слейв номер 8, сообщите значение энкодера 3'. И клокаешь/выгребаешь. Все за одну транзакцию. Если с I2C eeprom работал, то примерно так же.
8 светодиодов '595 выдержит. Чтение даташита вслух 5$ :-)
Ток через пин <20 мА, суммарный ток <75 мА. Если на каждый светодиод
заложить 3-4 мА, то нормально. Если мало, можно поставить TPIC6C595
(там мощные выходы с открытом стоком). Либо '595 + ULN2003.