You can indeed do it with a custom processor - create the modified sound file, add it to the XACT project programmatically (including the sounds that use the wave and cues that use the sounds), then go ahead and build the XACT project as normal. However, there's a fair bit of work involved in that, not least of which is a robust XACT project parser.
Depending on how many waves you're doing this for, you may find it easier to simply add the modified WAV files to the XACT project manually.
Finally, yes you can do it at runtime by modifying the cue's pitch - but you can only pitch down by a factor of 0.5 that way I think, and when you say "slow the sound" it's not clear whether you're intending the pitch to remain invariant, which XACT can't do (it's non-trivial though there are packages that can do it for you, offline at least).
XapParse, a parser for XAP (XACT) files