I would just like to know, what's wrong with me? Is there something I am not doing?
First of all there is nothing "wrong with you" and it is definitely NOT because you're Indian. I'm also non-white, and one of my best friends here is a young (23yr old) Indian dude who had slept with two girls in his whole life until showing up a year ago and now is juggling J idols and hot chicks around on his plate. He has a serious problem on his hands this Christmas season!
But yeah, it's not the Indian thing. We often joke about how the white card expired and the brown card is in vogue!
Talking to women in a way they will respond to is not something that is usually readily apparent to modern men, and we aren't socialized very well from a young age to do it. Instead, we are told to be nice, not offensive, wait our turn, and eventually someone will come to us. This is wrong and will mess you up.
It seems like you have a lot of advantages! Young, athletic, decent looking.
But, perhaps it's time to examine yourself critically in the social department.
Not only looks, I am, on an average okay to talk to guy. I never ask very personal questions or make sexual remarks. And as far as the things I hear from friends that people are comfortable to talk to me.
This description is not really what I would call "attractive conversational material" for women. It sounds like you are trying to nice as to not offend the girl, but instead are coming across as so bland she'd really like to do anything BUT be with you. Before you assume that the guy who took your girl did so because he was white (there are SOME girls like this, but your "game" or, more accurately, your personality should hold her over his race), first assume that maybe the way you are communicating with women is not the most conducive to attraction.
The first major shift I think you could make is from "trying to get the girl to stay" with you to "expressing yourself honestly". What would you say to her if you were totally sure she wouldn't leave. How do you joke around and talk to your guy friends? I don't mean for you to gush your soul about how she is beautiful and rare, but rather, relax and let loose. Speak your mind.
When guys focus so hard on stepping on eggshells and trying to be inoffensive and keep the girl there, the usual effect is the exact opposite - she runs for the hills. Far better to be bold and risk offending her by being hyper-honest in your expression. That way, if she leaves you know it was better off that way anyway.
It sounds like you are trying to be "friends" with the girl, like a big grizzly bear trying to sneak its way into a party of bunnies...
Kill the bunny, dude