Wie schon in meinem ersten Posting erwähnt, mischst du lexikalische und syntaktische Analyse miteinander. Dazu kann ich dir nur den selben Rat wieder erteilen: Benutze einen Tokenizer als vorbereitende Maßnahme für den Parser.
Tokenizer und Binärsequenzen, bring das besser nicht zusammen. Dass bei diesem Enctype ein Token (boundary_string) überhaupt funktioniert, begründet sich damit, dass die Wahrscheinlichkeit einer Kollision sehr gering ist.
Boundary ist einfach nur technisches Englisch für Trennsequenz. Die wird per Definition so gewählt, dass sie nicht in den Nutzdaten vorkommt.