Confirm a Modal Operator via Python?
I found a hacky way around my issue using ctypes. It's not perfect, but it's something.
The magic line ended up being ctypes.windll.user32.mouse_event(self.MOUSE_RIGHTUP)
With the full code now reading:
import bpy, ctypes


class UnrealRightClick(bpy.types.Operator):
    &quot;&quot;&quot;Timer that decides whether to display a menu after Right Click&quot;&quot;&quot;
    bl_idname = &quot;blui.unreal_right_click&quot;
    bl_label = &quot;Unreal Right Click&quot;

    _timer = None
    _count = 0
    _threshold = 0.2
    MOUSE_RIGHTUP = 0x0010

    def modal(self, context, event):
        if context.space_data.type == 'VIEW_3D':
            if context.mode == 'EDIT' or 'OBJECT':
                if event.type in {'RIGHTMOUSE'}:   
                    if event.value in {'RELEASE'}:
                        self.cancel(context)
                        return {'CANCELLED'}

                if event.type == 'TIMER':
                    self._count += 0.01
                return {'PASS_THROUGH'}

    def execute(self, context):
        bpy.ops.view3d.walk('INVOKE_DEFAULT')
        wm = context.window_manager
        self._timer = wm.event_timer_add(0.1, window=context.window)
        wm.modal_handler_add(self)
        return {'RUNNING_MODAL'}

    def cancel(self, context):
        ctypes.windll.user32.mouse_event(self.MOUSE_RIGHTUP)
        wm = context.window_manager
        wm.event_timer_remove(self._timer)
        if self._count &lt; self._threshold:
            if context.mode == 'OBJECT':
                bpy.ops.wm.call_menu(name=&quot;VIEW3D_MT_object_context_menu&quot;)
            # if context.mode == 'EDIT_MESH':
            #     if context.tool_settings.mesh_select_mode = (True, True, True)
            #         bpy.ops.wm.call_menu(name=”VIEW3D_MT_


def register():
    bpy.utils.register_class(UnrealRightClick)


def unregister():
    bpy.utils.unregister_class(UnrealRightClick)


if __name__ == &quot;__main__&quot;:
    register()

Hope this helps someone else, I'll update it if I can figure out a better solution for the new problem of mouse focus!