What if the more fit parent has fewer nodes compared to the other, will the disjoint and excess genes be discarded?
When crossover happens and one parent is fitter than the other, the nodes from the more fit parent are carried over to the child. This is the case as disjoint and excess genes are only carried over from the fittest parent. 
Here's an example:

// Node Crossover
Parent 1 Nodes: {[0][1][2]} // more fit parent
Parent 2 Nodes: {[0][1][2][3]}

Child Nodes:    {[0][1][2]} // after crossover


Gene information is also passed to the child during crossover. Matching genes (those that have the same innovation number) are chosen at random and passed to the child. The disjoint and excess genes are choose from the more fit parent.

// Gene Crossover
Parent 1 Genes: [1][2][3]      [6]   [8][9][10] // more fit parent
Parent 2 Genes: [1][2][3][4][5]   [7]

Child Genes: [1][2][3][6][8][9][10] // after crossover


As you can see, the gene innovation numbers in the child match up with the innovation numbers of the fittest parent. However the gene information from matching genes (in the example genes 1, 2 and 3 match) have an equal chance of being carried over to the child. In the example, the child's first three genes could have come from either parent.