She's running with the head down until the very last instant. Her arms go up to protect herself. She doesn't brace herself or lower her shoulder as if she's planning to do it. Since 1B is looking up, of course she got the worst of it.
This is obstruction on the 1B because C is the protected infielder here (after all, she's the one camped under the ball/the one who caught the ball).
I'm pulling my team off the field and out of the tournament if my player is ejected for this. I'm also going to consider legal action against the organization if my team isn't refunded in full. There's absolutely no justification for an ejection here when the 1B was the one at fault and the runner very clearly didn't do anything on purpose.
A number of years ago, a player on DD's team did the same thing in the same circumstances. She was quickly ejected. In the moment, I'm not sure what form of mind reading the umpires used to decide malicious contact, but the crew acted without hesitation. What the umpires didn't know was that DD's team mate was a jerk and had a history of this sort of thing...she fully deserved to get tossed.
1B is clearly attempting a play on a batted ball. She is completely legal in what she's doing when she gets trucked by a batter-runner who is, to put it charitably, oblivious to where she's going. While it's something less than certain, there's plenty of justification for an ejection. What is certain is that calling the 1B "at fault" is absurd. Another thing is certain...if that runner is safe at 1B after that, I'd be pulling my team off the field.