灵溪之战,暂时解除了桓氏的危机,桓振任命桓蔚为雍州刺史,镇守襄阳。而到了这一年的六月,毛璩的益州军队却攻陷了汉中,斩杀了桓希,毛璩自领梁州刺史。灵溪之败,还影响到了下游的稳定,据《宋书·武帝本纪》记载,在此前后,兖州刺史辛禺怀有二心,当时,北青州刺史刘该背叛晋庭,辛禺要求率军北上讨伐刘该,驻军淮阴,然而,辛禺在淮阴却与刘该勾结,辛禺的长史羊穆之当机立断,斩杀了辛禺,传首京师。刘裕以羊穆之为宁朔将军,令其驻守彭城。辛禺此人各书无传,我们不知道其人的资料。同时,建康城内也是危机四伏,被赦免的刁骋与秘书丞王迈之谋反,事情败露,两人均被处死,至此,刁氏被彻底灭门。
两个月前,义军桑落洲之战夺取浔阳以后,刘裕即任命晋陵太守刘敬宣为建威将军、江州刺史,当时,刘敬宣就推辞说:“大仇已报,四海清晏,只愿做一个平头百姓,以终天年。受到您的恩遇留下我,所以,我也只好一直为您努力效命,目前的职务已经十分优厚了,况且,盘龙(刘毅小字)、无忌(即何无忌)都还没有被委任为一州主官,您的两位贤弟的职务也还比较低,一旦将我越级提拔,肯定会遭到朝野的谴责。”但是,刘裕没有听从。刘敬宣就任以后,征集军粮,搜罗船只,凡是军国亟需的物资,都提前予以储备,因此,当刘毅的西征军撤回之后,很快就得以补充,重振军威。曾被桓玄流放的侄儿桓亮,自称江州刺史,他率众进攻豫章郡(江西省南昌市),刘敬宣将其击败。
刘毅、何无忌、刘道规等人经过将近半年的休整以后,于元兴三年十月再次出兵西上,义军进至夏口。桓振派遣其镇东将军冯该驻守长江东岸,扬武将军孟山图驻守鲁山城(湖北省武汉市汉阳),辅国将军桓仙客驻守偃月垒(武昌西南),三支部队共计有一万多人,互为犄角,水军与陆军相互支援。针对这三支敌军,义军也一分为三,由刘毅率军进攻孟山图驻守的鲁山城,由刘道规负责进攻桓仙客驻守的偃月垒,由何无忌、檀祗率水军监视长江水面,接应两军,防止敌人脱逃。义军士气高昂,喊杀声响震山谷,刘毅亲自上阵指挥,战斗从早晨一直持续到中午,终于两座城池均被义军攻下,生擒孟山图、桓仙客,当晚,冯该狼狈逃往石城(湖北省钟祥市)。十二月,义军又乘胜攻陷了巴陵(湖南省岳阳市),义军号令严明,军纪严整,秋毫无犯,所过之处,百姓安定。以这两次功劳,刘裕加封刘毅为使持节、兖州刺史,冠军将军军号如故。桓玄以桓放之为益州刺史,驻守西陵(湖北省宜昌市东南),涪陵太守文处茂率军将其击败,桓放之逃归江陵。到元兴三年年底,刘毅的西征军已经进抵巴陵,而益州方面的军队也占领了西陵,桓氏的江陵越来越感到了压力。
江陵城内的居民就在这种压力中迎来了新年,但是,新年的到来,并没有给这里的人们带来好消息。义熙元年(公元405年)一月,南阳太守鲁宗之(《宋书》称为南郡太守)起兵偷袭襄阳,桓蔚逃归江陵。鲁宗之,字彦仁,本为扶风郿(陕西省眉县人),晋孝武帝太元年间从关中逃往襄阳,被东晋任命为南郡太守。与此同时,刘毅等人的征西军团也进抵马头,与江陵城隔江相望。桓振挟持晋安帝向西北逃往江津(湖北省荆州市沙市区),并向刘毅等人派出使节,同意奉还晋安帝,但作为交换条件就是将江州和荆州地区割让给他。刘毅等人不同意。一月九日,鲁宗之率众进抵柞溪(源头出自湖北省江陵县,东流至湖北省潜江县,现已不存),在那里击破桓振虎贲中郎将温楷,进据江陵西北的纪南。此时,益州方面的军队也已经进抵灵溪(湖北省江陵县西),三方军队对江陵形成了合围之势。为了打破被动局面,桓振让桓谦、冯该率军驻守江陵城,自己亲自率军进攻江陵西北的鲁宗之,大破鲁宗之所部。然而,看到桓振离开江陵以后,刘毅等人趁虚向江陵城发起了总攻,在豫章口(江陵东南)大破冯该所部。桓谦得知冯该战败,吓得魂不附体,弃城而逃。义军乘胜攻进了江陵城,活捉卞范之、羊僧寿、夏侯宗之、桓道恭等人,全部斩首。桓振击败鲁宗之后,在回军的途中,看到江陵城火光冲天,知道江陵城陷,部众一时奔溃,桓振只好逃往涢中(湖北省涢水流域)避难。桓玄堂兄、卫将军、新安王桓谦,桓谦弟弟、临原王桓怡,桓玄叔父桓秘之子、雍州刺史桓蔚,左卫将军桓谧、将军何澹之、温楷等人,均北逃到后秦。当天,晋安帝司马德宗和弟弟琅邪王司马德文入驻刘道规的战船。稍后,振武将军刘道规又派遣建威将军刘怀肃率军在石城(湖北省竟陵市)将逃亡至此的冯该及其儿子冯山靖诛杀。
正月十三日,晋安帝下诏,军国大事全部交付冠军将军、兖州刺史刘毅处理。十六日,东晋宣布大赦,只有桓氏一族以及同党不予赦免,因为桓冲忠于王室,特地赦免了桓冲嫡孙桓胤;改元为义熙,进封百官两级爵位,单身老人每人五斛粮食,并下令允许全体国民大吃大喝五天;任命鲁宗之为辅国将军、雍州刺史,封为霄城县侯,食邑一千五百户;任命毛璩为征西将军,加散骑常侍,都督益州梁州秦州凉州宁州五州诸军事,代理宜都、宁蜀太守;任命文处茂为辅国将军、西夷校尉、巴西梓潼二郡太守;任命毛璩的弟弟、西夷校尉毛瑾为持节、监梁秦二州诸军事、征虏将军、梁秦二州刺史、略阳武都太守;任命毛瑾的弟弟、蜀郡太守毛瑗为辅国将军、宁州刺史。