I'm currently experiencing behavioral problems in my male cat that has escalated over the approximate year since they started.
Fable is a 4 year old male, and Twitch is one month younger. They've been together since ages 12 weeks and 8 weeks, were adopted within a few days of each other from the same shelter but different rooms, and were fixed and declawed at 5-6 months about a week or so apart. They get along really well, will often groom each other, play, and sleep together. Sometimes play can get a little rough and she'll hiss or growl at him to signal she's done and he'll quit after a few warnings.
The cats are indoor cats, but we have a fully screened in porch so we often leave the door to it open for them. There's several cats that come roaming around onto our property, and if they get too close to the porch, Fable gets extremely territorial.
The first instance about a year ago a male stray came up to say hi to them through the screen door, and Fable muscled his way between Twitch and the stray. He didn't do anything aggressive to her, but seemed very clearly to be guarding her. The next time it happened was when he started hitting her. Since then, it has escalated to him hitting her more, chasing her through the house, pinning her down and biting (though no injuries), and the past two times she has urinated in fright.
We're able to stop Fable just by grabbing him by the scruff and holding him still for a few moments, and Twitch will take anywhere from 30 minutes to several hours to calm down before she's back to her self, which we consider a reasonably quick recovery. After this everything goes back to normal for a few weeks until another cat gets too close to the porch.
My theory is that when he smells another cat, it overwhelms his senses and he no longer recognizes Twitch by smell, so he attacks her because she's a cat. This is possible because he hit her once before after she came home from being fixed and she smelled like the vet and drugs instead of herself. My mom thinks he's just lashing out at her to chase her away from the other cat because he can't attack and chase away the cat on the other side of the screen so he's trying to separate them by any means necessary. However these are both just guesses to try to describe the scenario better.
I'm looking for possible solutions to this problem.
We're considering locking up at sunset, as most of these incidents happen after dark, but that only avoids the problem and can also be frustrating for everyone because they won't understand why they can't go onto the porch when they could before.
We've tried scaring off the cats with yelling and even throwing things in their direction to no avail, and we don't want to put out anything scent-deterring in case it bothers our cats or any of the forest animals near our property.
We don't want to put either cat on medication.
As far as I know, punishment after the fact is useless, since Fable won't understand if we punish him after he calms down, and if we punish him while he's in a fight mood, he might escalate the situation with us.
They are well exercised for house cats. They play several times a day both with each other and alone with their toys, and we throw treats across the house for Fable to chase instead of handing him them. We don't believe he is pent up.
We don't have any family members or friends with cats, so we can't have anyone bring a cat by to try to get him accustomed to strangers and we're not even sure that would work.
Are there any training methods to handle this kind of aggression? Can we train him somehow to not go into a fight mode when he sees/smells an unfamiliar cat? Or is the only option to avoid the situation entirely?