Oltre al consiglio che ti è stato dato da Oregon, l'errore sta che anche se c'è nel mezzo dell'array due elementi che non rispettano la condizione palindroma comunque non viene "notificata" al tuo programma perchè come hai detto tu tiene conto solo dell'ultimo controllo.
Un suggerimento potrebbe essere quello di ragionare per negazione e cioè controllare se l'i-simo elemento non è uguale al suo opposto nell'array e nel caso settare v a false mentre farlo partire di default a true.
Magari se v diventa false interrompere il ciclo con un break.