>> Xlle can't be generally avoided so we have to take conservatively first.
>
> Why it cannot be avoided? What is it needed for?

The main purpose is to discern at recovery a prepared XA (XAP) that was never binlogged from one that was.

Your case

>>> Another way to do this is to delay the binlog checkpoints until all XA
>>> PREPARE in a binlog file have been XA COMMIT'ted 

assumes that XAC must always come in "normal" time.

But of course, being a part of the user's decision, it can be late significantly up until

a purge from binary logs that contain the incl the total RESET MASTER.

In the latter case its eventual post RM XA-COMMIT would be bin-logged with the full

awareness.