potresti fare un explode sulla stringa

$str= explode(" ", $stringa);

in questo caso $str è un array in cui ogni elemento è una parola..
Nel caso superi le 300 lettere puoi mettere le prime X parole

$newStr=$str[0]." ".$str[1]." " .---- $str[X];