While using a redstone block timer and a system that sets mobdrops to false, kills a chicken, then sets it to true, i found that it was very inconsistent as to wether or not the chicken would drop things. If i set the gamerule manually, then after the second or third chicken I kill, they stop dropping things. This was happening on a Minecraft Realms Trial server that i obtained over the weekend.
Is the clock you are using a /fill clock and are all command blocks attached to that one clock?
If so, that makes sense, because the setting of the gamerule to false, killing the chicken and setting it back to true all happens in the same tick.
Maybe the item dropping of a killed entity doesn't happen at the exact time it is killed, but i wouldn't know.