I have a 16 1/2 year old tabby that's been peeing blood for a few weeks now. I took the urine to my vet for a urinalysis, and he found both an infection and bladder crystals (which I think is the same thing as your Struvite crystals, unless yours are a more specific type).
The antibiotic seemed to help at first, but by the 7th day (the last round of antibiotics) he was peeing mostly red again. I'm concerned with cancer, but at his age there's nothing I could really do about it if he does.
Mine has been VERY finicky with food... I swear, I can open a can of something today that he'll love, and then tomorrow open the exact same thing and he won't touch it! I've gone through at least 12 brands and flavors like that. He seems to eat Purina One better than anything else, but he'll eat boiled chicken better. Sometimes he eats better if I sprinkle fish food on top of it (seriously), but sometimes he doesn't like that, either.
I considered a raw food diet but was concerned with the lack of taurine, arginine, and fiber. And at his age, I also have to worry about even a minor bacterial infection. So I guess that I've ruled this out.
For the bladder crystals, my largest concern has been getting more water in to him... more water in means more water out, which (in theory) means flushing the crystals out. With him rebelling against wet food, the only other thing I've found is to let him drink the water that I boil the chicken in. I'm low-boiling 1 chicken tenderloin in about 1/2 cup of water for 30 minutes, then I let it cool, shred the chicken and put it in a bowl, then pour the warm (but not hot) water in another bowl. For the last 2 or 3 days he's drank all of the water and eaten about 1/2 of the chicken.