You have two questions regarding this tale.
- Is it true?
- If so, why isn't it mentioned in the Torah?
I will answer the second question first. This is indeed mentioned in the Torah. When Moshe names his son Gershom, he gives the following explanation [Shemot 2:22]:
וַתֵּלֶד בֵּן, וַיִּקְרָא אֶת-שְׁמוֹ גֵּרְשֹׁם: כִּי אָמַר--גֵּר הָיִיתִי, בְּאֶרֶץ נָכְרִיָּה
And she bore a son, and he called his name Gershom; for he said: 'I have been a stranger in a strange land.'
This pasuk can also be translated as "... for he said: I have been a stranger in the land of a Nochriah [gentile woman].'"
The land of a gentile woman would mean that the monarch is a queen, rather than a king. How do we know which land, and that he married that woman? Another pasuk [Bemidbar 12:1] states that he had married a Cushite, that is, Ethiopian, woman:
וַתְּדַבֵּר מִרְיָם וְאַהֲרֹן בְּמֹשֶׁה, עַל-אֹדוֹת הָאִשָּׁה הַכֻּשִׁית אֲשֶׁר לָקָח: כִּי-אִשָּׁה כֻשִׁית, לָקָח.
And Miriam and Aaron spoke against Moses because of the Cushite woman whom he had married; for he had married a Cushite woman.
By putting two and two together, we get four, that this Ethiopian woman was the queen of Ethiopia, and Moshe had married her. Perhaps other details of the story come from other ambiguously phrased verses, or from logical deductions. For instance, Moshe's meteoric rise to power, from rags to riches, is based on the fact that he was at some point גֵּר הָיִיתִי, an unaccepted stranger, yet he eventually married the queen.
However, we must admit that this is not mentioned explicitly in the Torah, but only alluded to. Why?
This question has been asked before on Mi Yodea, why midrash is not in the Torah. For instance, here.
There are many possible answers. For instance, (a) it might be that the Torah is meant to be a multilayered document, with meaning on both the surface (peshat) level and the deeper (midrashic) level. And not everything can be on the surface, or the Torah would be a much longer text, without any deeper meaning to be dug out. (b) it might be that this was left out of the peshat narrative because it was not critical to the story. (c) it might be that this was some author, perhaps not even a member of Chazal, who filled the vacuum which was the missing years in Moshe's life, such that this story is not at all true. (d) it might be that Chazal intended this story homiletically, such that it is not historically true. Answers (c) and (d) would answer your first question in the negative.
Rashbam, a pashtan, considers this story of marrying the Kushite queen to be historical, as well as the primary peshat of that verse in Bemidbar mentioned above. For more, see my blogpost here.