Evolved networks fail to solve XOR
The problem was due to the following issues in my implementation:

The offspring generated in the crossover was not mutated (!)
The mutations did not occur with the expected frequencies (too few links and weight mutations)
The sigmoid activation had to be steepened

Another thing that previously caused issues was the network.activate function. Make sure that you wait for the network to stabilize when doing classification tasks, so all signals have time to propagate through the network.