Mark Cavendish was denied a chance of his second stage win at the Tour de Suisse after a crash-affected sprint finish on stage five.