Dunno if u still have this problem...
Here's what u can do, first of all a toyota corrolla's starter is vulnerable to the heat emitted from the powerful engine, plus you have a 2 litre, which should be super powerful.
First service the starter whereby u change the Bendex drive ( the little gear like piece that connects to the engine and twists to start it) they wear out after a couple of years on toyota's. Then connect a relay to your starter so that it doesnt burn out too quickly... this is actually the problem...
Because the ignition is built to send so much power through to the starter , the starter wire burns faster and the bendex drive is given too much power to start the engine with, this therefore wears it out sooner. with the relay in it... less power and new bendex drive.... car will start great... and also check ur ignition switches ( assuming the mechanics didnt already do this)
Hope that helps
Chris VS, March 2008