I'm having this same issue and ran into the 'reset' happening when I have upwards of 125-150 pages marked as "Exclude".
There is a note in the code that reads:
// SWFIXME: Is reindexing the array going to create a memory optimisation problem for large arrays of WP post/page objects?
Where the array of pages is being reindexed for neatness. I'm wondering if this 'times out' or causes some other issue and then the array of $pages is returned as blank and effectively resets.
Again, I'm no PHP expert but it seems Simon might be onto something with his own note.
Either way, until this addressed we have to stop using the plugin. I believe we are going to have to assign a meta_value to each page and then run a query before calling wp_list_pages and excluding those pages. Not ideal but until this 'reset' on large sites is fixed it will have to suffice.