Hilfe zur Selbsthilfe: Hast du mal einen performance profiler damit beschäftigt? Wenn ein solcher fehlt einfach mal nen paar aktuelle DateTime jeweils vor und nach den einzelnen funktionsaufrufen speichern und anschließend auswerten. Somit weisst du anschließend, wo ggf. ein performance-engpass besteht. Das sollte die grundlage für weitere optimierungen sein.
Ich vermute, dass die teuersten aufrufe irgendwo im Laden der Webseiten liegt.

Eine generelle Frage: Benötigst du wirklich einen DOM und Regex? Mir scheinen alle deine Regex auch als XPath abbildbar zu sein.