If you explictly specify the stem directions of the notes
that the rest collides with, the rest collision handler will
move the rest in the opposite direction (which is what you
want, at least in this case). So, just change bar 17 of your
voice 1 to:
\translator Staff = two \stemUp fis, a
take a look at measure 17 here:
http://jeffcovey.net/music/scores/bach/inventions/12-tmp/
when the upper voice moves into the lower staff, the eight rest in the
lower voice jumps up and engraves itself over the beams of the upper
voice. it looks like it's trying to get out of the way and jumpin