Com essas alterações é possível desabilitar o botão enquanto o cronometro estiver ativo, e não acumular SetInterval's e spamar o placar.
MAIN.JS:
function inicializaCronometro() {
var tempoRestante = $("#tempo-digitacao").text();
campo.off('focus');
campo.one('focus', function() {
$("#botao-reiniciar").addClass('botao-disabled');
var cronometro = setInterval(function(){
tempoRestante--;
$("#tempo-digitacao").text(tempoRestante);
if(tempoRestante < 1){
clearInterval(cronometro);
finalizaJogo();
}
},1000);
});
}
function finalizaJogo(){
campo.attr("disabled", true);
$("#botao-reiniciar").removeClass('botao-disabled');
campo.addClass('campo-desativado');
inserePlacar();
}
ESTILOS.CSS:
.botao-disabled{
pointer-events: none;
}