Installing kernel 6.17.1-300.fc43.x86_64, while the device has stopped hard locking, it now will fail to sleep after toggeling the dock a couple times, but over-all the behaviour seems better, so yeah this does look like a kernel bug.
[ 415.043344] Lockdown: systemd-logind: hibernation is restricted; see man kernel_lockdown.7
[ 415.057028] Lockdown: systemd-logind: hibernation is restricted; see man kernel_lockdown.7
[ 415.114218] wlp194s0: deauthenticating from 7a:45:58:b3:23:39 by local choice (Reason: 3=DEAUTH_LEAVING)
[ 415.372637] Lockdown: systemd-logind: hibernation is restricted; see man kernel_lockdown.7
[ 415.388276] Lockdown: systemd-logind: hibernation is restricted; see man kernel_lockdown.7
[ 415.388432] Lockdown: systemd-logind: hibernation is restricted; see man kernel_lockdown.7
[ 415.388578] Lockdown: systemd-logind: hibernation is restricted; see man kernel_lockdown.7
[ 415.388587] Lockdown: systemd-logind: hibernation is restricted; see man kernel_lockdown.7
[ 416.474730] PM: suspend entry (s2idle)
[ 416.483100] Filesystems sync: 0.008 seconds
[ 416.491482] Freezing user space processes
[ 416.507619] Freezing user space processes completed (elapsed 0.016 seconds)
[ 416.507638] OOM killer disabled.
[ 416.507640] Freezing remaining freezable tasks
[ 436.515077] Freezing remaining freezable tasks failed after 20.005 seconds (0 tasks refusing to freeze, wq_busy=1):
[ 436.515092] Showing freezable workqueues that are still busy:
[ 436.515095] workqueue events_freezable: flags=0x4
[ 436.515099] pwq 58: cpus=14 node=0 flags=0x0 nice=0 active=0 refcnt=2
[ 436.515107] inactive: pci_pme_list_scan
[ 436.515119] workqueue pm: flags=0x4
[ 436.515122] pwq 30: cpus=7 node=0 flags=0x0 nice=0 active=0 refcnt=2
[ 436.515125] inactive: pm_runtime_work
[ 436.515135] workqueue usb_hub_wq: flags=0x4
[ 436.515137] pwq 62: cpus=15 node=0 flags=0x0 nice=0 active=1 refcnt=2
[ 436.515140] in-flight: 111:hub_event
[ 436.515274] Restarting kernel threads ...
[ 436.515354] Done restarting kernel threads.
[ 436.516075] OOM killer enabled.
[ 436.516076] Restarting tasks: Starting
[ 436.516798] Restarting tasks: Done
[ 436.516847] random: crng reseeded on system resumption
[ 436.532317] PM: suspend exit
[ 436.532387] PM: suspend entry (s2idle)
[ 436.542637] Filesystems sync: 0.010 seconds
[ 436.543324] Freezing user space processes
[ 436.546690] Freezing user space processes completed (elapsed 0.003 seconds)
[ 436.546696] OOM killer disabled.
[ 436.546697] Freezing remaining freezable tasks
[ 456.552970] Freezing remaining freezable tasks failed after 20.004 seconds (0 tasks refusing to freeze, wq_busy=1):
[ 456.552986] Showing freezable workqueues that are still busy:
[ 456.552988] workqueue events_freezable: flags=0x4
[ 456.552992] pwq 58: cpus=14 node=0 flags=0x0 nice=0 active=0 refcnt=2
[ 456.553000] inactive: pci_pme_list_scan
[ 456.553012] workqueue pm: flags=0x4
[ 456.553015] pwq 30: cpus=7 node=0 flags=0x0 nice=0 active=0 refcnt=2
[ 456.553018] inactive: pm_runtime_work
[ 456.553028] workqueue usb_hub_wq: flags=0x4
[ 456.553030] pwq 62: cpus=15 node=0 flags=0x0 nice=0 active=1 refcnt=2
[ 456.553033] in-flight: 111:hub_event
[ 456.553159] Restarting kernel threads ...
[ 456.553262] Done restarting kernel threads.
[ 456.553754] OOM killer enabled.
[ 456.553756] Restarting tasks: Starting
[ 456.554459] Restarting tasks: Done
[ 456.554536] random: crng reseeded on system resumption
[ 456.571870] PM: suspend exit