Apologies if this has been said already--I skipped part of the thread.
I agree with PPs that the friend is out of line, of course.
My other reaction was, "Why is this even a problem?" Especially with the geographical distance, but honestly I think I'd say the same if you lived across a decent-sized town from each other. What is there in this situation that prevents her naming her kid Charlotte?? I'm mystified.
OK, I lied; I'm not really mystified, but I feel like I should be. Of course, it's about our cultural uniqueness fetish. Deity forbid there be anyone with the same name, anyone with the same dress, etc. OK, stopping myself right here, this isn't a forum for rants on cultural tendencies, but my point is: having the same name as someone you don't even see every day is fine. Even if you do see them every day it's not the end of the world. In fact, kids can have a very different perspective on this from adults: it can seem special to share a name with someone, if you find the person likable. As a child I became best friends with a girl in my church because we had the same first name.
I know it creates some confusion--"Which Mary?"--but there are things you can do. My cousin is named after my mother. When they're together, my cousin goes by a seldom-used nickname (actually the Spanish pronunciation of her name) to differentiate. That's just one example.
So I might say this to the friend if I were the OP: "We don't at all mean to prevent you from naming your child Charlotte if you like! It could be pretty special for our children to share a name.