var zaehler4 = 30;
function countdown()
{window.document.spiel.zeit.value = zaehler4;
x = window.document.spiel.zeit.value;
while(zaehler4 > 20)
{window.setTimeout("window.document.spiel.zeit.value = x-1",1000);
zaehler4--;}
}
du ziehtst lediglich von x 1 ab. Das kann minimal 19 ergeben, da x sich innerhalb der Schleife nicht ändert.
while(zaehler4 > 20) {
window.setTimeout("window.document.spiel.zeit.value = zaehler4",1000);
zaehler4--;}
}