I did some scanning using the gc
module to see if python actually stores a handler. These are the results I got in between running a modal.
<bpy_struct, Event at 0x000001B486118E48>
<bpy_struct, Event at 0x000001B4F7EDD908>
<bpy_struct, OBJECT_OT_modal_operator("OBJECT_OT_modal_operator")>
<function scan_gc at 0x000001B486A071E0>
Which leads me to believe that the handler isn’t actually exposed as a python object. Even worse, modal operators written in C don’t show up at all. So, this looks like a dead end for now.
I think an alternative approach could be to handle any exceptions or set a timeout after which it still fails to save, either alert the user or design a timer around it. Which from by the look of things is what you already did.