"사는" is much more natural in the sentence. I can think of two reasons:
- When two clauses modify the same noun, I think it is quite common to have "A하는 B하는 C", especially if the middle part (B) is short. On the other hand, "A하고 B하는 C" is preferred if A and B are comparable(?) properties that belong to the same category.
For example, I would say "어제 꽃집에서 본 예쁜 꽃", because "꽃을 꽃집에서 보았다" and "꽃이 예쁘다" are very different properties. You wouldn't normally say "그 꽃은 어제 꽃집에서 보았고 예쁘다." ("The flower was seen yesterday and is pretty." - it's even awkward in English.)
On the other hand, I would say "빨갛고 파란 꽃" instead of "빨간 파란 꽃", just like an English speaker would more likely say "a red and blue flower" instead of "a red blue flower". Here they are equal properties, so it's more natural to use connect them using -고.
Similarly, "탄자니아에 살다" and "(이름이) 미리암이라고 한다" sound like "different categories" to me. Especially since "X라고 하는 Y" is more or less a fixed phrase, so adding "-하고" in front of it doesn't sound natural.
On the other hand, you could say, e.g., "탄자니아에 살았고 지금은 한국에 사는 언니".
In general, I'm not sure if there's a fixed rule on which form is better. (If anyone has a better idea, please chime in.) I think you just have to keep practicing and get the feeling of it.
- Another problem is parsing: if you use "살고", the sentence could be equally parsed as:
이 책은 [유니라고 하는 한국 어린이가 [탄자니아에 살고] [미리암이라고 하는 언니랑 편지를 쓰는]] 이야기예요.
= This book is a story about a Korean kid, Yuni, who lives in Tanzania and writes letters with a girl named Miriam.
(Although I would rather use "살면서" instead for this meaning.)
So, using "사는" gets rid of this ambiguity.
Finally, regarding your specific question #1, "탄자니아에 사는" can only modify 언니, because if it modifies 미리암 that would sound pretty weird: it then means A girl who is named 'Miriam who lives in Tanzania'!