[SYCL] Fix queue::khr_empty() behavior with blocked commands (#21327)
- Check all events that haven't been submitted to the backend instead of
just host tasks
- Swap the order of checking the native queue & the stored events to
mirror the logic in queue::wait()
This should fix sporadic failures of out_of_order_queue_status_khr_empty
& out_of_order_queue_status_ext_oneapi_empty tests.