A bare JID represents the account on the server, not a currently in-use resource, so you
receive a reply from the server (not the user's client.)
As with your previous question about presence probes, you seem to want everything presence
subscription is designed for whilst explicitly avoiding the use of presence subscription,
and then you complain about the problems caused by not using presence subscription.
Surprisingly, the answer is: use presence subscription.