A second vote for the crank sensor - was a problem on mine too and it's been fine since it was changed. Not that expensive a part either (around £70-80) so won't break the bank. These things wear out anyway so it's also not a wasted effort even if the problem does turn out to be something else - not that likely though from your description of the problem. Let us know how you get on
Cheers,
Mark