They are pretty much never too old to be spayed and neutered. It will always give them a better quality of life because they can enjoy being a cat instead of being obsessed with mating.
At 7 months, she is just about the "right" age to be spayed. Many vets suggest 6 months.
It really is never too old to spay a cat, unless there is some health concern already in a senior cat. But otherwise any age is fine. It can be done as young as 8 weeks but some vets won't do it yet until 6 months. Cats can become pregnant as young as 4 months so there really is no reason to wait.
As far as pain goes, the cat is put out while the procedure is being done. They don't feel anything. Most vets let you come pick the cat up the same day you drop it off. The cat will be lazy for a day or two recovering. Then they will be back to normal. I have never had to use pain meds or a special collar or anything but you just want to make sure the female doesn't lick at the stitches and the male doesn't lick (down there).
Females will have a small incision down their belly. It might get a little puffy in the center, but it will go away in a few day and either the stitches wil dissolve away or you will bring the cat back in to have the stitches removed.
No pain meds after a spay!!??? Jen you need a new vet!! Spaying is major abdominal surgery; how would you feel if you had a hysterectomy and then the doctor said, you'll be fine, you don't need any pain killers!!!
If the female is in good general health there is no age she's too old to be spayed. Many breeders spay their females after a few years of breeding them.
As far as the male, he should have been neutered sooner. Two years old has created some habits that may not cease (like spraying). But he can and should be neutered as soon as possible.
Un-neutered/spayed cats have a higher risk of cancers.
Please do get them both done. they are not too old, and cats can still come into heat all their life if they are unspayed (sadly they are also more likely to have cancer)