Чтобы потом в блейд шаблоне делать сортировку в духе foreach($massiv as $year => $item), и потом по $year сортировать
Тип первым выводить последние годы
Вы делаете как-то странно. Одномерный массив превращаете в 2-х мерный, что бы его опять сделать одномерным. Опять же, ты сказал, что нужно вначале показывать последний год. Делается distinct годов, по ближайшему делается выборка из архива, другие грузятся через при запросе (если юзер захотел их посмотреть). Но это детали.
То что ты хочешь делать, это делается через декоратор. Потому как функция архива отдать лист архива, а не сгрупированый двухместный массив. Тебе нужно вынести логику группировки в отдельны декоратор, и его тестировать, что он возвращает список по годам и в порядке убывания. Тогда ты ему можешь подсунуть коллекцию или свой репозиторий, который вернёт приготовленную коллекцию с которой он уже разберётся.