beh, semplicemente ti basta controllare il carattere subito precedente e subito successivo alla parola che hai trovato e li controlli: se sono spazi, punti, virgole o in generale altri simboli di separazione ok, altrimenti non ti interessa

il problema è che il sistema che utilizzi attualmente è considerevolmente pesante:
- sia per via del num rows
- sia per via dell'eregi

o fai tutto con una sola espressione regolare (una preg) oppure ti fai un piccolo parser con strpos per acquisire la posizione della parola e per poter quindi controllare cosa c'è prima e dopo e per poterlo anche sostituire

però la soluzione con la preg è meglio (molto meglio) perché il motore dietro le preg, prima di eseguirle, converte la sequenza in (fisicamente) codice macchina che viene richiamato ed è quindi MOLTOOOOO più performante, soprattutto nel tuo caso che ti puoi trovare TANTISSIMA roba da controllare

alternativamente la soluzione con strpos è pure molto veloce se la applichi correttamente però sicuramente più pesante delle preg.

quanti elementi potresti avere dentro quella tabella? 100? 1000? 10000?