>>32381110Short answer: its the game's logic, whatcha gonna do about it
Autistic answer: ghost types can make themselves incorporeal at will if they are normally solid (golurk might be a statue, but it uses its ghost atributes to become untouchable, same goes for cofagrigus, trevenant, shedinja, banette, etc.)
Even then, they simply cannot interact with purely physical creatures, such as normal types (the material and the spiritual world don't see or interact with each other, which is why they're mutually immune).
Fighting type represents both a more polished kind of physical strength achieved through martial arts and a different kind of inner aura or endurance/combatant spirit, different from the plain aura or whatever normal types have. Fighting types' techniques are still physical and can't touch ghosts, but ghosts can harm the spirit of fighting types, reason why they aren't mutually immune and is just a one-way thing.
Golurk and cofagrigus are stone formations imbued with ghostly energy to the point where their bodies molecules, even if seemingly solid as other similar pokemon, cannot interact with physical types. It comes down to saying that you can punch a psychic stone but you cannot punch the ghost of a stone.