Hola
Primero: ¿Que es una palabra palindrome?
Segundo: El tipo de datos String de Pascal es un vector y está definido como:
String: packed array[1..255] of char;
Como dato informativo> El elemento 0 (cero) del vector posee la longitud de la cadena, por eso String[0] te devuelve la longitud.
Por eso me surge la duda de eso de 'No usar vectores'.
Al menos que quiera que lees caracter por caracter la palabra y usas listas enlazadas de punteros. Pero lo veo medio inutil. Antes que nada, ?Que es una palabra palindrome?