Вы описываете совсем запущенный случай. У меня было попроще, посреди транзакции по postPersist дергался листенер который флашил свои изменения.
Мне кажется граф событий не сильно жизнь упрощает. Вариант с выкидыванием следующего события кажется и проще и правильнее. Хотя без контекста тяжело конечно делать какие-то выводы.
"это проще" когда у тебя листенеров на всю систему с десяток (у меня их больше сотни) и когда над проектом работает человек 4-5 (можно договориться и более менее люди вкурсе). А когда людей 20+ уже "не проще и лучше делать все для тупых и явно"
p.s. просто наброшу ради случая что странно юзать доктрину людям которые топят за какие-то там абстракции в бизнес лэйере) может быть "интерфейсов" инфраструктуры там нет зато есть проектирование модели данных под UI