Hallo,
du bist auf ein klassisches Problem gestoßen, was durch deine JS-Flash-Brücke nur noch verschärft ist. Ohne einen alert bzw. einer Rückgabe eines Strings durch den beforeunload-Handler wirst du den Browser nicht dazu bringen, auf deine Serverübertragung zu warten. Da musst du dir ein anderes Konzept ausdenken, wie du die Daten zwischendurch zum Server bekommst. Wirklich zuverlässig wird das nie sein.
Aber vielleicht gibt es einen Flash-Trick, der mir unbekannt ist.
Mathias