A ver...
DESDE el principio hasta 300 caracteres despues de la palabra?
o DESDE la palabra encontrada solamente?
Código PHP:
//La primera opción sería así...
$nuevacadena = substr($cadena,0,strpos($cadena,$palabra) + 300);
//La segunda sería así...
$nuevacadena = substr($cadena,strpos($cadena,$palabra), 300);