я один раз ловил проблему из-за того, что тоже объявлял PasswordEncoder как бин. Где-то в конфиге он достается из appContext, как appCont.getBean(PasswordEncoder.class) и если не null, то сетается в провайдер, в котором пароль не bcrypt. Может быть токен ты шлешь валидный, но из-за того что PasswordEncoder не тот, то auth не прохдит. Это можно быстро проверить, если PasswordEncoder превратить в static field, инициализировать в static блоке, и вызывать где надо