HTML != XML
Die XML-Deklaration in XHTML-Dokumenten sieht zwar so aus, als wäre sie angebracht und viele meinen, das wäre professionnel, aber in Wirklichkeit versetzt das den IE in IE8 und abwärts in den Quirksmode und außerdem ist diese Deklaration selbst bei XHTML1.1 nie nötig gewesen. Das Lustigste ist natürlich, dass bei XHTML-Dokumenten der XHTML-Header Pflicht ist (application/xhtml+xml), das aber quasi von niemandem umgesetzt wurde, weil der IE (mal wieder) die Seiten mit diesem Header nicht mehr anzeigte sondern als Download anbot, weil er den Header nicht kannte.
XHTML war schon immer ein Fail und halber Kram, der nicht abwärtskompatibel war (immer noch besser als XHTML2, das nie das Licht des Tages erblickt hat - zum Glück). Ich glaube in 2013 sollte man sich komplett davon distanzieren und konsequent jegliches neues Projekt als HTML5-Dokument auszeichnen. HTML5 ermöglicht nämlich sowohl die XML- als auch die klassische HTML-Formatierung alleinstehender Elemente (<hr> UND <hr />), man kann Dokumente flexibler gestalten und das Beste ist wohl, dass die neuen Features im Gegensatz zu XHTML1.1 (und 1.0 Strict) und erst recht XHTML2 nicht benutzt werden müssen.
Was jetzt konkret die Frage angeht: XML kommt bei mir in .xml-Dateien, HTML in .htm-Dateien, JSON in .json-Dateien und PHP in .php-Dateien. Das halte ich für einen ganz normalen Umstand. Ich glaube aber verstanden zu haben, dass du die Templates direkt in PHP machst und das deswegen ein Problem ist auf deinem Hoster. Short Open Tags sind aber wirklich Müll, vielleicht kannst du den Hoster darum bitten, diese zu deaktivieren. Alternativ könntest du auch in Erwägung ziehen, ein Template-Engine wie Twig zu benutzen, das sehr mächtig und einfach zu benutzen ist.