Si no es imprescindible hacerlo así, maqueta tu HTML y CSS de otra forma que no requiera alterar un for para meter y cerrar elementos "extraños" cada X posiciones..
Si es imprescible, mejor un doble for para hacer mas sencillo el control de que el numero de elementos a imprimir no sea múltiplo de 3 en tu caso.
Código PHP:
Ver original$elementos = 12;
$elementos_linea = 3;
for ($i = 0 ; $i < $elementos / $elementos_linea; $i++) {
echo '<div>';
for ($j = 1; $j <= min($elementos_linea, $elementos - $elementos_linea * $i); $j++) { echo 'parrafo ' . $i * $elementos_linea + $j;
}
echo '</div>';
}