question on encryption of multiple distinct messages
It does not work either. There are a few counter examples:

Let $x=G(k)$ be the key stream, which I understand you want to use to encrypt multiple messages

1 $m_1=0^l$ and $m_2=r \in\{0,1\}^l$, once you encrypt $m_1$, the ciphertext $m_1\oplus x = x$ is exactly the key stream, that can be used to decrypt the ciphertext of $m_2\oplus x\oplus x=m_2$. Note $m_1$ and $m_2$ are distinct.

2 Let $m \in \{0,1\}^{l-1}$, $m_1=m||0$, $m_2=m||1$, $m_3 =r \in\{0,1\}^l$, then given the ciphertext of $m_1$, in a CPA game, the adversary can easily distinguish $m_2$ and $m_3$. All 3 messages are distinct.

The main problem is that distinct means the messages are not equal, but nothing more on their distributions. Therefore, it is insufficient to ensure the indistinguishability of ciphertexts.

When you use an iv, which is a long enough random string, the iv is used as input to $G$ (well I am abusing the syntax a little bit), so you have $G(k,iv)$ which produces a different and independent key stream per iv.