We have the same problem which is very easily reproducible. Our system uses a FreeRadius to assign "Mikrotik-Rate-Limit" of 512k/10240k to clients. MikroTik assigns "default-small" as queue type.
To reproduce the problem we go to a high site and do a TCP bandwidth test direction send to client's IP.
On the graph the client ALWAYS get 4mbit. If you remove the dynamically created simple queue, the client suddenly gets speeds of up to their full 10mbit.
To test if "default-small" is the problem, we go to Queue Types and change default-small from Queue Size 10 packets to Queue Size 50 packets. Now our 10mbit client is getting a very good speed.
We researched this problem and found this post of the forum asking similar question:
http://forum.mikrotik.com/viewtopic.php?f=2&t=57724
So, I've just changed default-small queue size from 10 to 50 packets, and that seems to do the trick for the high speed customers. But, now the lower speed customers will see longer latency.
Changing internal defaults on MikroTik queues seems wrong and we are worried about a huge network wide change (many high sites) that might assist big customers but give more latency to small customers. Can anybody provide us with additional insight into what is going on here?