I have a really unique personal experience. I am the type of person who gets really uptight when I try to push myself. So when I really pushed myself and worked extremely hard in Contracts, I ended up not being able to separate the trees from the forest on the exam. Result: C. Now, I didn't care about Torts. In fact, I sacrified Torts for Contracts. But I still did the readings, went to class and studied for the exam. Result: A.
I don't know if we're in a similar situation, but sometimes I find it's better to take a step back and not take yourself too seriously. Just let your natural intutions fall through. It's like writing a paper in college about a topic you're really passionate about. You end up writing emotionally instead of writing dispassionately, resulting in a poor grade. If you just treated the assignment dispassionately, doing your research and arguing in a nuanced way, obviously your grade would have been better. It may be as simple as that.
As for this ridiculous idea that legal reasoning is somehow ingrained, that's the most dangerous advice anyone can give. Legal reasoning is like writing. You can never be perfect. You can always improve.
And take the legal reasoning class. You already have the advantage of actually caring about law school. You'll probably be in a class where most people don't care about law school. See this as an opportunity to regain your confidence, because the competition is likely to be inferior to you.