You mention you're from India, and that often you get calls, but they don't lead to interviews.
In my experience, they've seen your resume on job portals before calling you.
This means your resume is not the problem.
If you're getting the phone calls, and not progressing, you should focus on the contents of the phone call.
Maybe record the next few and share with some friends to see if you're needing improvement with how you interview.
I've seen many people that have experience, and skills, but over the phone or in person, their communication skills make them present as a much less experienced person, or they're not sounding confident in their answers...
Find out what is being said during your interview calls - record it, focus back on it, and think....
- Are you asking for too much money?
- Are they explicitly asking you to answer the gap on your resume? If so, it may be that this is part of the issue. Again, it would help if you could listen back and read, what the person's response was when you explained it, if they seemed fairly satisfied with the response or not.
- Are you telling them that you've been fired? I would recommend just saying you stopped working at that company.
- Are the calls at all relevant to the position you're looking and qualified for? If you don't meet 50-60% of the job requirements, it may be a waste of time. Unfortunately, there are some low quality recruiters that call literally everyone, for literally every position, just shotgunning the market. This could be part of it.
Lastly - If it's anything like it is back in the US, there's a general uneasiness at companies around hiring people in from other countries. Not that that's fair, or potentially even legal, but they may view the fact that you're there on a visa as a sign that you may have trouble staying there in the future.
People may be uneducated about the process, think it's going to be more difficult than it even is, etc, and might just move on to the next person. I'd avoid mentioning it unless asked directly about it.