NO se puede cambiar un settimeout en curso, sólo se puede eliminar y crear otro.
 
id = setTimeout(function(){},1000); 
id devuelve un número porque  
 Cita:  id.constructor = function Number() { [native code] }
    para eliminar el setTimeout, se usa clearTimeout, cuyo argumento es el id  
clearTimeout no devuelve nada 
Un saludo.