I think I got the issue with thousands of fleece being made.
Namely:
The quantity differs between item types. Generally speaking, cloth, thread, powder, bars and globs use numbers representing the size of material within one item, and everything else uses a static quantity. While REAGENT:A:10:THREAD:NONE:NONE:NONE thread is an extremely tiny portion of a random spool of thread, REAGENT:A:10:TOY:NONE:NONE:NONE is ten unique, solid toy items.
This is from df wiki and I actually checked. In the reactions_magicloom the quantity for reagent is 1, which produces 20000 fleece.
I changed that to 10000 and lo and behold, the quantity of fleece made drops to 2.
So in order to repair that, all that you need to do is go to "raw/reactions_magicloom.txt" (in your main game and all worlds folders. Don't forget that! I actually lost half an hour trying to get what's wrong until I realised I've been only changing in the main folder and not in the world itself...) and change
[REAGENT:B:1:CLOTH:ANY_YARN_MATERIAL:NONE:NONE][MIN_DIMENSION:10000]
to
[REAGENT:B:10000:CLOTH:ANY_YARN_MATERIAL:NONE:NONE][MIN_DIMENSION:10000]
At least this is what worked in my case.
And make sure to change the rest of cloth based reactions in the file. There are four of them including the one above.
Dunno if it's necessary to change other files though.
I hope I helped, cause I don't know if that's going to work for all.
Cheers!