A little more info.
The plugin which saves the AI files can be interupted by the other plug-in or not depending on user settings.
I checked the "undo context" in both cases.
When the plugin is NOT interupted, it DOES allow undochanges() and it's running in "silent" mode.
When the plugin IS interupted, it does NOT allow undochanges() and it seems to be running in normal mode. Also if I set it to "silent" it does not fix the issue.
I found an obvious work around for my particular plugin (simply saving a copy of the document, THEN deleting undesired layers, then resaving, duh) but I still don't understand why the UNDO stops working after I get control back to my plugin.