Lo primero que se me ocurre es que trabajes con una estructura en memoria, no ligada a ningun componente. Eso te evitará operaciones de refresco y similares.
Código Delphi
[-]
var
TS:TStrings;
begin
TS := TStringList.Create();
...
...
Memo.Lines.Clear;
Memo.Lines.AddStrings(TS);
Otra cosa que te podría optimizar la operación, es no eliminar lo que te sobra, sino quedarte con lo que te vale y trabajar con eso.
1) Recorre las líneas hasta encontrar <PALABRA>
2) Copia desde esa línea hasta la 127 a TS
3) Trabaja sobre TS