Dunque, ci sono vari passaggi...

Per prima cosa rimuovi tutti i tag HTML con strip_tags() come hai giustamente detto.
A questo punto hai una stringa "pulita".

Il prossimo passo è rimuovere i caratteri speciali: per farlo devi creare un array che contenga tutti i caratteri speciali che vuoi rimuovere e poi passarlo alla funzione str_replace:

codice:
// Provides: Hll Wrld f PHP
$vowels = array("a", "e", "i", "o", "u", "A", "E", "I", "O", "U");
$onlyconsonants = str_replace($vowels, "", "Hello World of PHP");
Qui maggiori info: http://php.net/manual/en/function.str-replace.php

A questo punto hai la stringa pulita.

Ora dividi la stringa in singole parole usando explode().

Con un ciclo foreach, conta il numero di caratteri di ogni singola stringa/parola e se adatta, la aggiungi all'array definitivo che poi andrai ad usare:

codice:
$return = [];

foreach ($exploded as $word)
{
    if (strlen($word) > 3)
        $return[] = $word;
}

var_dump($return);