queues are matched in-order. If you make the bottom most queue as described above but target 0.0.0.0/0 then it’s will catch everything not already queued above.
Use simple Queues: In routerOS 6.0 theres a lot of improvements for process thousand of simple queues. If you don’t want to add a simple queue for every customer just use address list, mangle and queues tree (but QTree don’t are improved in the 6.0+). So its better to use simple ques and maybe you could try use mangle with simple queues.
Edit: The problem with the previous configuration its that I didn’t figure out how to handle all the connections coming from one IP Address and address list using PCQ with only one Queue Tree or Simple Queue.