Finalmente creo que por un lado estás complicando innecesariamente lo que intentas hacer, por otro, tu script tiene demasiados errores como para poder detallártelos todos, muestra un gran desconocimiento del uso de variables, sintaxis propietaria de MySQL, defectos de lógica y de uso de controladores de flujo.
Finalmente, creo que deberías empezar por intentar esto de un modo más simple, ya que el uso de cursores en MySQL es recomendable sólo como recurso absolutamente necesario, y no parece ser el caso.
Yo empezaría con algo simple, como esto:
Código MySQL:
Ver originaldelimiter $$
contrato_id,
SUM(IF(YEAR(`fecha_cierre`) = 2013, 1, 0)) ano_an
, SUM(IF(YEAR(`fecha_cierre`) = 2014, 1, 0)) ano_ac
, delimiter ;