It's good to have standards. You don't want to settle for the wrong person just because you are lonely or bored. However, it is also important to give people a chance sometimes, because they might surprise you. I'm quite the homebody as well, but I'm dating a man who loves having a very active social life. Our relationship works because we compromise - he spends weeknights at home with me, cooking, watching movies, and walking our dogs, while I go out on the weekends with him and our friends. Is he the type of person I would normally gravitate towards? No. But I think our differences complement each other and bring out the best in one another. He keeps my life fun and interesting, and I keep him grounded. I also think you need to realize that a guy can't just "understand" you right off the bat. It takes awhile to get to know someone, and you have to be willing to open yourself up to other people. Guys can't just read your mind. As for "willing to fight for you" ... I don't really understand that. If a guy is making an effort to get to know you and make you happy, then he's fighting for you.
I feel like your biggest problem in meeting the right guy might just be that you are a homebody. You won't find anyone if you stay home all the time. The best thing you can do is just get out there and meet people. Summertime is the best time you could ask for to meet people in casual, fun environments. Go to the pool/lake/beach, plan a camping trip, arrange a volleyball game, etc. Invite your friends and tell them all to invite all of their friends. Having a larger group takes the pressure off, and a fun activity will keep you busy. If you have your eye on someone, ask them to be your teammate on a game of Chicken or something. Just relax, have fun, and get out there! Good luck!