El problema de los clics lo puedes controlar con el método
one de jQuery, el cual ejecuta una y sólo una vez un evento.
DEMO
Sería mejor si los eventos los asignaras en el código JS y no como atributos de los elementos del documento, esa forma de trabajar está desaconsejada por la W3C a partir de la implementación de HTML5.
Saludos