Cool.
Sieht gut aus!
Hinten raus kannst Du Dich aber statt der Satzzeichen auf einen optionalen Punkt beschränken.
(?<=[!?.]\s)(\w{1,3}\.?\w*\s?){1,4}\Z
Die Beschränkung auf Lookbehind[#0000cc] !?.[/#0000cc] macht Sinn.
Die übrigen Satzzeichen sollten hier irrelevant sein.
Und die Kombinationsmöglichkeiten mit dem Punkt könnte man auch weiter einschränken:
1. Punkt folgt auf ein Wort bestehend aus genau auf einen Großbuchstaben;
2. Punkt folgt auf ein Wort bestehend aus max. 3 Zeichen, beginnend mit einem Großbuchstaben und ggf. gefolgt von bis zu 2 Kleinbuchstaben;
3. Punkt folgt auf ein Wort bestehend aus einem Kleinbuchstaben aus der Gruppe [vd] (gibt es noch weitere zu berücksichtigende kleingeschriebene Abkürzungen?)
Aber das sind jetzt wohl eher akademische Verfeinerungen, für die im Moment noch keine praktische Anforderung besteht. ;-)