Tu devi rimuovere l'ultimo carattere dei 30 record con id più basso. Siccome non è scontato che tali id siano progressivi e che quindi abbiano valore compreso tra 1 e 30, con questa query

select id from news order by id asc limit 29,1


recuperi l'id, dopo averli ordinati in senso crescente, del 30esimo record.

Poichè mysql non consente di eseguire una query di aggiornamento nella quale, tramite una subquery, si fa riferimento alla tabella stessa, si utilizza l'escamotage di assegnarle un altro nome (nel mio esempio tab) in questo modo

select * from (select id from news order by id asc limit 29,1) as tab)

A questo punto, una volta noto l'id massimo che ci interessa, aggiorniamo tutti quelli che hanno un id inferiore o pari a tale valore e con

substring(titolo from 1 for char_length(titolo)-1)

non fai altro che estrarre tutta la stringa tranne l'ultimo carattere.
Spero di essere stato chiaro.