If you don't mind using the dev console, as a stop-gap measure you can probably overwrite Pikachu's ability directly:I don't know what can be done about it.
To set the ability you can use:
playerparty[X].Ability = "ability name"
whereXis the position of pokemon in your party. E.g.playerparty[0].Ability = "Solar Power"will set the ability of the first (topmost) pokemon in the player's party accordingly. Note, there's no checks whether given pokemon is eligible for specified ability, so hijinks can ensue if you want to abuse it.