Dipende da come devi interpretare il codice ritornato dalle singole funzioni.

Un esempio potrebbe essere:

onsubmit="if(counter(this)) return caratteri(this) else return false;"

o, equivalentemente:
onsubmit="return (counter(this)) ? caratteri(this) : false;"