Na szybko, bo już późno (to tylko zarys, że się da, żeby to jakoś sensownie używać trzeba by było to trochę (trochę bardzo) zoptymalizować). No i bez sprawdzania adresów.
function check(id)
{
var text = document.getElementById(id).value;
var maxword = 10;
var tmp = 0;
for(i=0, count=text.length; i<count; i++) {
if(text[i] == ' ') {
tmp = 0;
}
else {
tmp += 1;
if(tmp == 11) {
value = text.substr(0,i) + ' ' + text.substr(i, count);
text = value;
document.getElementById(id).value = value;
}
}
}
}
Prócz optymalizacji trzeba będzie pokombinować ze zdarzeniami, bo onkeypress w przypadku wklejonego tekstu w niczym nie pomoże. Onkeyup i onkeydown są tutaj użyteczne, ale mogą być mocno obciążające. setInterval będzie za to sprawdzał nawet jeśli nie będzie trzeba.
Pewnie da się to zrobić miliony razy lepiej, ale za późno już dla mnie

Poza tym osobiście bym zostawiła z paskiem.