The problem with ignoring the maximums is that they would fill up your coffers with all the wrong crap just because it was more abundant.
That's precisely the problem. The dorfs often do ignore the posted maxima. I currently have 80000/60000 cloth, 6/2 buckets, and 0/1200 soap. Thanks, guys. Good work. Keep up the soap spam; at least I know you're trying to get clean.
It's not really that they ignore the maximum. This is obvious because they don't store
all your cloth and thread, just lots and lots of it.
I think what happens if that, if the hospital needs cloth (or thread, or any material it stores that does not meet or exceed its requested amount), it generates multiple storage jobs. But those aren't all cleared once the hospital has stored enough, so the extras above and beyond what it needs are stored too. I think this is further complicated by partially-used cloth, or cloth temporarily taken out of storage, not meeting the hospital's requested storage amount. So if you have 29950/30000 cloth, a new fresh cloth will end up getting stored. If you have 30000/30000 but a dwarf has taken one out to be used, it's brought down to 20000/30000 and a new storage job gets made.
I'm not 100% sure on that last one; I'm more confident about the first two.
You can even manage this issue slightly by dumping materials above and beyond what the hospital is set to store. Once the extras are removed down to the proper cap, it won't store more. However, this is a very temporary measure since it only works until something brings it below the cap again (see above), in which case it may get overstocked once more.