I put hopper with 1 green dye in each slot below the furnace. Then I cook cacti with charcoal. Hopper only receives dye from output slot of furnace if I take all remaining charcoal and cacti from furnace. So if it has 1 slot which it cannot place in hopper, then it does not place anything.
It should try to place all stacks in order, not just the first stack.