- He wants to know whether we want dinner.
- He wants to know whether or not we want dinner.
What is the difference between two sentences above？
Semantically, there is no difference. There is a difference in how they tend to be used, I believe, though I suspect it is dialect-dependent.
In my experience (native British English speaker), we would tend to use the first when it's simply an offer. The second is used when there's a possible expectation that dinner will be provided. Depending on tone and context, it might be that everyone knew he would be feeding you and something has happened that calls it into question. It might also be used if you're going to be spending the evening at someone's home and it unclear if good manners mean they should be expected to provide dinner.
The second would also be used, as in many "whether ... or not" cases, when someone is impatient for an answer.
There's no grammatical difference or difference in meaning: the "or not" is just an informal addition to the sentence, often seen in colloquial and informal language.
It's similar to the "at" added to the end of "Where's the dog at?" - it's not necessary and the entire meaning could be conveyed with a simpler "Where's the dog?"
In both examples, the question is "Do you want dinner, or not?". The word "whether" incorporates the "or not", but sometimes people choose to be more explicit. Over time, it just becomes part of the language, and is more of a turn of phrase than a grammatical necessity.
You could, perhaps, assign a slight semantic difference in meaning. For the purposes of this example I'll simplify the scenario to a "One person asking another", but it applies to your example too.
Do you want dinner?
Is more likely to be seen as an open-ended "Do you want to eat?", eg "Should we make dinner?" or while
Do you want dinner, or not?
Is more akin to "I've made some dinner, do you want some of it?"
That's very minor and certainly isn't a grammatical rule, it's just a difference in the context they are most likely to be used. This is also likely to be dependant on your locale: in some areas this difference is more pronounced, in others the two would have identical meanings
He wants to know [whether (or not) we want dinner].
The inclusion of "or not" is entirely optional here, though one might say that it's redundant.
The bracketed expression is a subordinate interrogative clause (embedded question) functioning as complement of "know".
The meaning can be glossed as "He wants to know the answer to the question 'Do we want dinner (or not)?'"