Security-компонент навешивает свой собственный
ExceptionListener, в котором ищет среди всей иерархии исключений те, которые относятся к компоненту (в вашем случае
CustomUserMessageAuthenticationException - подкласс
AuthenticationException) и обрабатывает их по-свойму.
Можете попробовать поиграться с приоритетом своего листенера, но есть вероятность что сломаете логику работы компонента