Получается так, что в build кеш не работает, потому что jar всегда новый. Но, если все файлы в папке BOOT-INF/lib окажутся такими же, как и раньше, то слой в результирующем образе окажется таким же, как и был в прошлый раз при сборке. Таким образом он не будет запушен в registry: остаются только два тонких слоя с .class-файлами и ресурсами
Осталось понять, зачем паковать spring boot jar, а потом распаковывать его.
С тем же успехом можно было бы просто закинуть все либы (включая снепшоты и часто изменяемые модули) из зависимостей в отдельный слой, а в другой закинуть jar приложения. Докерфайл и команда запуска будет даже проще, эффект тот же, ну и лишний архив делать не надо 🤷♂️