is this sentence correct?
I will be in between 10 a.m. and 10:30 a.m.tomorrow as I have a doctor's appointment
I'd put a comma after 'tomorrow'. Apart from that, it's fine.
Context is always important; labelling is rarely important.
I would add a "sometime" to avoid confusion with "inbetween." I had to read this sentence a few times to understand what you were saying.
"I will be in sometime between..."
I agree that that makes it clearer. You could also simply change the word order instead of adding a word.
Tomorrow, I will be in between 10am and 10.30am, because I have a doctor's appointment [at 9.30am].
I will be in tomorrow between 10am and 10.30am ...
All the versions have the potential for a little ambiguity because "I will be in" could be taken to mean "I will arrive" or "I will be present in the office". Theoretically, you could be saying "Tomorrow, I'll be in the office between 10am and 10.30am but then I have to leave because I have a doctor's appointment at 11am". There, you would be saying that you will only be available in the office for those 30 minutes.
I think this is true of any version of 'I'll be + location', but the context normally makes the intended meaning clear, for example:
A: I'll drop by at five.
B: Fine - I'll be in/there. (I will be present).
A: We need you to arrive at five on the dot.
B: Fine - I'll be there. (I will arrive at that time)
Context is always important; labelling is rarely important.
I agree, but "I'll be in between 10am and 10.30am because I have a doctor's appointment" gives context but is still potentially ambiguous. Without knowing the time of the doctor's appointment, we don't know if it's before 10am or after 10.30am. It could still mean "I'll be here between those times but not at any other time that day" or "I'll arrive at some point between those two times".