This can be confusing, but I think there is an explanation.
The reason Normal and Ghost types can't "touch each other" is because they are basically complete opposites. In reality, normal humans like us can't touch or see ghosts. Ghosts also can't touch us. We are basically in completely different realities or whatever.
Fighting is a different story. The reason fighting type doesn't affect ghost is because you can't punch, or kick, a ghost. That is just common sense. However, the relationship between normal and ghost is not the same as the relationship between fighting and ghost. Fighting types aren't necessarily normal, so there is no reason a ghost wouldn't be able to touch us. Fighting and ghosts are not opposites in any way.
Just because X doesn't effect Y, that doesn't mean Y doesn't effect X. Psychic can't hit Dark. Dark can hit psychic. Electric can't hit ground. Ground can hit electric. The only reason why two types won't affect each other is if there is some reason behind it, which is definitely shown in the relationship between Normal and Ghost, which are complete opposites.