is there a way to designate that a drum only be used for a single type of liquid, even when it's empty?
They do, but honestly EIO conduits are useless unless you're trying to make something more compact. You can't prevent two from intersecting as far as I know, other than place them in the same block.You can give TE3's fluiducts a try? I do believe there is a white listing configuration for it so you can make certain pipes allow only certain fluids in.
And doesn't Ender IO's pipes have the same option? I vaguely remember a spotlight I've seen ages ago that you only need to right click the section of the pipe with a filled bucket? Or does that make the whole pipeline only accepts one kind of fluid?