What we need is RabbitMQ that actually works as a queue and doesn’t do this. Messages should stay at the head of a queue untill client dequeues them explicitly.
It seems like a very straightforward scenario, but for some reason I can’t find any broker to support it.. A broker should run on Windows OS.
Apache Qpid is probably your best option. Of all of the message queues, this one has a number of interesting things going for it, including strict ordering.