Multistep CCK module
On a recent drupal project I used multistep and ran into similar issues.

To work around this I used with drupal "workflow" states, to keep the incomplete forms as draft, and have users explicitly set the form to complete by changing the state on the last page.

We then rewrote all the drupal views that we used for reports, so that they filtered out any draft nodes or nodes with state not set.

You might also be able to change the state automatically, by hooking into node save and writing some code to check whether the user is on final page, and doing any extra checks to confirm that the node is completed and should be moved to a different state.

 $step = _multistep_get_current_step($type);


Do watch out that the multistep current_step may be return 0 if the user or admin user viewing all steps on one page. Also watch out for loopholes where users can skip past steps onto final page without completing everything.

I realise for some applications that a lot of partially completed nodes is just untidy, but 
advantage for us was that our users could come back to partially completed forms and continue later, and that it also gave us an insight into how many people gave up part way through, all of this could be managed using normal drupal views to produce lists of items in draft state.