RegEx Matching Large Blocks of Text

Certainly a split (in any language) is all you need but to address your Regex pain, I suspect it isn't so much the regex itself as the options. Like whether newlines are included by the dot metacharacter.

Those options are a little obscure with Keyboard Maestro's built-in commands but a long time ago a few of us built macros to set them. Mine is Regexp Options Macro.