The solution proposed by Tex2002ans works perfectly and is a great help. However, to be perfect, it should be able to detect errors when two sentences are in the same paragraph. In the following example, only the last absent closed guillemet is detected, but not the first one.
Code:
<p>«Have you been here a long time Terry?» ... «About five days» he replied.</p>
Another solution I found is less sophisticated and requires more visual attention, but, in case of errors, it highlights anomalies in the code that easily catch the eye making it useful:
Trivially it selects all sentences closed by two guillemets, even if they occur within the same paragraph.
Perhaps making two passes of the entire text with the two solutions might eliminate errors altogether.