Have you tried doing each side independently? This would probably solve the shorting issue.
Like, have the right side motors in parallel, forward and reverse on one switch and the left on the other?
This could be achieved with just two dpdt switches.