Сервис это вспомогательный компонент, предназначенный для вспомогательной работы, типа запрос и обработка данных, работа с файловой системой и тд, middleware же непосредственно предназначен для обработки запроса и формирования ответа сервера. Сервисы обычно в контроллерах используются, это как уровень абстракции, обычно сервис реализует какой либо интерфейс, чтобы его можно было бы мокнуть при юнит тестировании. Короче это абсолютно разные вещи.