Il tuo script non e` fatto male.

Non so cosa sia document.form: probabilmente intendevi oCheck.form, cioe` il form che contiene il campo passato nella variabile.

Inoltre non capisco perche` testi la stringa dal secondo carattere all'undicesimo: io testerei dal primo al nono.

Vedi anche questa modifica:
codice:
function BloccaCheck(oCheck){ 
  var cName = oCheck.name.substr(0,9);
  var onoff = (oCheck.value == 'ON');

  for (oObj in oCheck.form) {
    if (oObj.name.substr(0,9) == cName) {
	//&& oObj.name != oCheck.name) { 
      oObj.disabled = onoff;
    }
  }
  return true; 
}