Upvote:4
Your first question is why did the British maintain such large forces Iraq and Persia in 1942 to 1943. In addition to the answers you gave in your question, there was at least one more reason. As Wikipedia reports:
"As [the Indian 14th Army's] soon to be promoted commander Major-General William Slim wrote: 'We could move we could fight and we had begun to build up that most valuable of all assets a tradition of success. ... it was stimulating to be at what we all felt was a critical spot, waiting for the threatened German invasion of Turkey.'"
Also, these forces were doing double duty, backing up the Russians against a German thrust through the Caucasus, AND the British 8th Army in Egypt, whichever threatened to break first, instead of being committed to help one or the other.
As to your second question of why Indian troops were used, a large part of the reason was because they were "neighbors" to the Middle East. This was especially true given that a large proportion of "Indian" troops came from today's Pakistan. When they were no longer needed in the Middle East, they were moved back to India under General Slim. Basically, these Indian divisions defended a large and critical contiguous area ranging from Iraq in the west to East India and later Burma in the east relatively close to their homes.