Am Ende löst aber auch ein Template-System nicht das logische Strukturierungsproblem, das der OP hat.
Wenn 3000 Zeilen PHP CODE HTML generieren, liegt mit Sicherheit ein strukturelles und konzeptionelles Problem vor. Und letztendlich auch ein Logisches, weil unter solchen Gegebenheiten mit der Logik was nicht stimmen kann.
Mein FW hat 300 Zeilen und das ist in c geschrieben! Und es eignet sich dazu, tausende verschiedene Anwendungen auszuliefern! Der OP hingegen hat 3000 Zeilen für eine Anwendung, über diesen Unterschied lohnt es sich mal nachzudenken.
Dasselbe FW hab ich nämlich auch in PHP entwickelt und da hatte die Hauptdatei nur 170 Zeilen.
MfG