This happens because you, like many other female runners, take yourself waaaayy too seriously. Despite what you say in your opening statement, you're obsessed with body weight and its affect on your performance. You starve yourself.
Well, you don't think you do, but you do. You go out to the local burger joint with friends/teammates. Everyone orders a juicy burger with fries, everyone except you. You order the mediterranean salad with vinaigrette because you "have more self-control than your friends" or because "you are sooooooo dedicated to running..." Imbecile. You would never go near a beer. You're so dedicated (and your social life probably reflects that dedication, if you know what I mean), yet you run shitty race after shitty race. AND you can't get a period. Gee, I wonder why. You're body is like "FEED ME," and you're like "here's a spinach leaf." You tell yourself that you're satisfied and full, but it's all a big lie.
Quit kidding yourself. You're pathetic. I bet you even run the majority of your miles on soft, padded surfaces like gravel and grass. Laughable.
Keep it on the crete, and eat a burger every now and then.