Out of curiosity, would placing all DELETE queries within a single transaction also help? Or does that still cause PostgreSQL to process each of the queries sequentially?
See https://www.postgresql.org/docs/17/sql-set-constraints.html for more information regarding constraint checking.