The time a caravan takes to pick up their junk depends on the amount of items they have to sort through - gifting them your used socks one by one (i.e. handing them over without the bin used to bring them to the depot) can greatly inflate the time consumption. With caravans ranging up to seven wagons - the highest number i'm absolutely sure of having seen, although i don't commonly count them - just packing up what they brought without any trade can keep them in the depot until two weeks or so before the dwarfs arrive. I know two methods to avoid collisions:
1 - shorten the time the humans need to pack up - buy lots of small stacks or single items - thread, food - sell full bins of stuff and/or barrels and pots of prepared meals, giving them few individual items for a lot of value. With very large caravans, that still puts them unnervingly close to the dwarfs.
2. - massively _increase_ the time the humans spend at the depot. Use them as your main garbage collectors, make sure to take every last sock and +pig hoof figurine of a blood gnat+ out of the bin. This way, the humans won't be near done packing up when the dwarfs arrive. The dwarfs can enter the depot, unpack all their garbage and trade while the humans are still busy packing up. This works surprisingly well with really large forts that produce lots of old clothes. The humans can easily take to mid- or even late winter before they finally shove off, while the dwarfs will typically take until spring to pick up all their items.
The highest value count for old clothes alone that i've achieved was somewhere around a quarter million, while i've had a few trade sessions that broke the one-million mark (through prepared meals, of course).