Nick is happy to be home. But I don't know if he's happy I'm with him.
I feel narrator should have used "that" or "because" after happy in above sentence. Am I correct?
Your example sentence is one of ellipsis where certain words may be left out of a sentence if they add no additional meaning. Yes, you can say "that" but it isn't required. Some other examples (all words in parentheses are optional):
That is the car (that) I've wanted to have since I was a child.
Those are the girls (who) I asked out.
She is the one (who/whom) he is going to marry.
This doesn't mean you can always leave out these words. Sometimes the preposition is required. For example:
Those are the girls who turned me down for dates.
That's the shop where I get my hair cut.
I don't know if there is any rule to follow to help with this, unfortunately. My suggestion is to pay attention when you see it, and copy what native speakers do.
Andrew gives a good overview of "that" being optional, but I think it's useful to see a more specific way it's used, because its behaviour usually depends on the construction.
The construction that captures this type of sentence is:
To be [adjective of emotion] that [verb clause]
The [verb clause] is the reason for feeling [adjective].
In most of the cases I can think of, you can indeed drop "that" in this construction.
I'm happy you're here.
She's scared the monsters will come out at night.
He's worried his credit card will be declined.
I'm afraid I can't let you enter, sir.
They're surprised you haven't called yet.
One exception that sounds wrong to my ears is this:
✗ I'm excited you're coming home.
✓ I'm excited that you're coming home.
Moreover, dropping "that" is more common in some of the above examples than others.
If anyone can think of a general rule for which adjectives can and which can't, please share. Otherwise, I suspect it's on a case-by-case basis, probably influenced by the adjective's frequency.
"Because" would change the meaning of the sentence.
Nick is happy to be home. But I don't know if he's happy because I'm with him.
The above questions whether or not the narrator's presence is the cause of Nick's happiness. It is also awkwardly ambiguous. Is the narrator prevented from determining if Nick is unhappy, because the narrator's presence prevents him or her from making such a determination? No, but one must reason that out.
Colloquially, "happy that" can mean "pleased that." The original sentence questions only whether Nick is pleased with the narrator's presence. His general state of happiness might be coincidental. The narrator might make a determination in the negative.
Nick is happy to be home. But he's not happy that I'm with him.
I prefer not to elide "that" in such cases, because it gives the reader a hint of how the rest of the sentence is to be parsed.
Are you asking whether he is happy for having you with him? If so, 'that' wouldn't be the proper word for this, but 'because'.
You meant: He is happy for having you - He is happy - because - you are with him. That's the reason that makes him happy, because you are with him.
Because is the word linking these two clauses, in order to give the statement a resonable reason for his happiness, which is: for having you with him.
The real purpose of the word 'because' is to find a reason for some act, see:
I was happy because of the good news you told me - the good news you told me was the reason of my happiness.
He was very excited because he at last took his driver license - the reason of his excitement was the fact that he took his driver license.
I'm very surprise because my family has finally gotten along well - The reason of his surprise was due to the fact that his family now gets along well.