решил проблему.
В каталоге _id
нужно было задавать роуты не через _route.vue, а просто route.vue и все стало работать хорошо.
Оставлю ещё немного времени вопрос открытым, может кто-то подскажет более удобное решение, просто сейчас есть недостаток, что страница грузится, это не долго, но заметно, особенно если учитывать нагрузку (если б магазин был в продакшене)
Вдохновляюсь магазином restore.
https://www.re-store.ru/catalog/MWHM2RU-A/spec/
У них такие же табы, но обновляется только компонент табов, как это реализовать? Code-splitting? (хз как у них, там битрикс)