Theory:King Desmond was a good guy all along.
I sincerely believe that Desmond was all along a good man,who only came to dislike Zephiel due to the latter behavior.
Firstly,Desmond was a pacifist. Look at the Bernese army exploit in FE6(which is only 20 years after FE7 events).Sacae and Ilia were subjugated in record time,despite the former being filled with fast nomads who should had used bernese wyverns as target practices and have the mobility to flee any unfavorable engagement,while Ilia is filled with mountains,snow and battle hardened mercenaries.So why didn't Desmond do as any other king would had,use his superior might to extend his realm ?The only rational explanation is that Desmond simply is too horrified by violence to use war as a tool.
Second,Desmond is open-minded.Look at how Murdock was able to become Wyvern General despite his peasant heritage.
Third,his treatment of Zephiel was made due to him being evil.Firstly,let's look at Zephiel acts in Fe6.He invade all of Elibe except Etruria.He has no issue with killing all who resist,even womens and childrens.He wage this war to set up his genocide of the human race.One may object that Zephiel wasn't that evil when he was little.I disagree.With most people,their personality is formed at a very young age.Also Zephiel talent in swordmanship shows a love of violence.There is a good chance that after witnessing Zephiel's abject(off screen) behavior,Desmond slowly caught on that his son was evil.It also explains why he killed the fox that was offered to Guinevere,as he most likely feared that the fox had rabies,some disease,or that it would bite Guinevere.Seeing that Zephiel would be an inhuman king,and fearing that he would get Guinevere assassinated to get rid of a claimant to the throne,he was forced to make plans to prevent him from ever becoming king.Sadly,his two attempts failed,and he was killed by his own son.