與奉系達成合作之局後,孫傳芳在1927年初近一個月的時間裡得以「迴光返照」。即1927年1月,孫、奉關係調整成功,張宗昌的直魯軍大舉南下接防,孫傳芳全力以赴應付浙江戰場,將北伐軍自杭州近郊一直逼迫到浙境南陲之衢縣。
然而,孫傳芳尚未來得及慶賀,北伐軍便於1月29日開始反攻,僅僅半月時間便逼近杭州。在此情況下,孫傳芳不得不下令棄守杭州,撤往嘉興一帶布防。在北伐軍凌厲的攻勢下,孫傳芳的屬下紛紛倒戈。2月,浙江省長陳儀打開杭州城門歸降北伐軍;3月,安徽省長陳調元公開就任國民革命軍第三十七軍軍長。此時孫傳芳的部隊已成驚弓之鳥,孫傳芳不得不將浙江防線和南京、上海交給張宗昌的直魯聯軍防守,他本人率部退守揚州一線。但張宗昌的直魯軍也未能挽回敗局,3月下旬,上海、南京先後被北伐軍占領。隨著直魯軍的節節敗退,孫傳芳率部由揚州退往淮陰,後又退往瓜州、泰興一帶。
就在直魯聯軍反攻失敗,孫、奉聯盟敗局已定的時候,4月12日,蔣介石發動反革命政變,大肆屠殺共產黨人,在南京另設國民政府,「寧漢分裂」致使北伐擱淺,使孫傳芳獲得喘息的機會。
5月,處於內外交困之中的蔣介石再次想到聯合孫傳芳,以擴大外部合作實力,抗擊黨內政敵。於是,張群約楊文愷到南京會晤,洽談孫、蔣合作。張群帶來蔣介石的親口允諾:「若孫聯帥與蔣委員長合作,南京國民政府即任命孫聯帥為國民革命軍副總司令兼華北聯軍總司令,蔣委員長則以國民革命軍總司令兼任華南聯軍總司令。」
張群以為,孫傳芳作為北伐軍的手下敗將,已不同於開戰前的身價,能得此重用應是擺脫敗局的最好機會,楊文愷也深以為然。豈料孫傳芳一口回絕,由於與奉系合作愉快,又得此休整機會,孫傳芳認為匡復江南當為期不遠,無需棄奉投蔣。
倘若孫傳芳此時投向蔣介石,其結局定然大不一樣。但孫傳芳執迷不悟,錯過了最後挽救敗局的機會。蔣介石因多次尋求與孫傳芳合作不果,積怨也越來越深。
6月中旬,孫傳芳參加張作霖在北京召開的軍事會議,參與策劃了張作霖成立的安國軍政府。6月18日,張作霖通電就任中華民國軍政府大元帥,孫傳芳被任命為安國軍第一軍團軍團長。
7月初,孫傳芳、張宗昌乘蔣介石自顧不暇之機進行反攻,先後奪回徐州、蚌埠、淮陰等地,蔣軍退至長江南岸。8月13日,就在孫傳芳為連打勝仗得意之時,又一個喜訊傳來:蔣中正宣布下野了!此時,孫傳芳已被暫時的勝利沖昏了頭腦,認為蔣介石被迫下野,南京政府即陷入無政府的癱瘓狀態,正好是攻打南京的好機會,當即對總參謀長孟星奎、秘書長萬鴻圖說:「好,我們就趁此機會,發動6萬大軍強渡長江!」
孟星奎、萬鴻圖表示贊同。加上蔣介石占領江浙後,既要擴軍,又要建立政府機構,各種捐稅比孫傳芳統治時期加重,引起江浙人民不滿。他們組織了一個人民代表請願團,到蚌埠請孫傳芳出兵江浙,救江浙人民於水火之中。孫傳芳聽後大喜,認為出兵江浙是民心所向,必定大獲成功。
8月24日,孫傳芳宣布兵分三路強渡長江,其中第一路總指揮為鄭俊彥,目標是搶渡長江,進攻下關,占領南京;第二路總指揮為劉士林,目標是占領龍潭車站附近的高地,掩護大軍渡江,再會攻南京;第三路總指揮為馬玉仁,目標是由揚州攻鎮江,牽制上海敵軍。
首先行動的是鄭俊彥部,選定大勝橋進行偷渡,然而此時正逢國民黨第七軍軍長李宗仁乘「浚蜀號」炮艦,從九江駛往南京,途中李宗仁拿望遠鏡看到一群可疑的民船,用旗語招呼,對方毫無反應,待靠近,才發現船內坐滿士兵,李宗仁立刻下令朝民船開火。鄭俊彥部所乘民船哪裡敵得過「浚蜀號」的炮火攻擊,只能原路返回。
孫傳芳親赴浦口為第一路督陣,正巧碰到鄭俊彥部被李宗仁擊退,心中十分不快,好在孫傳芳很快得到消息,第二路劉士林部於26日清晨順利占領龍潭車站,這才稍稍放心。
龍潭鎮北臨長江,東南背靠寶華、湯山和棲霞山,距南京30公里,是南京的唯一屏障。搶占此地,即可阻斷南京對外交通。所以龍潭被占,引起以白崇禧、何應欽、李宗仁為首的南京軍事委員會高度重視,白崇禧立刻電令駐紮寧杭一帶的國民革命軍第一軍衛立煌部、劉峙部火速增援,在國民革命軍的夾擊下,劉士林部不得不暫時放棄龍潭。
27日,劉士林部再次向國民革命軍發起猛烈攻擊,終於在28日復占龍潭。29日,在南京海軍狙擊下,孫軍5萬多兵力衝破阻力強渡成功,聚集於龍潭、棲霞山一線,孫傳芳本人也隨軍前往,在龍潭水泥廠坐鎮指揮。為激發士氣,孫傳芳下令:「凡運兵完畢之船隻一律調回長江北岸由大刀隊看管。」頗有背水一戰、破釜沉舟之氣魄,其奪回江南之決心可見一斑。
此時,李宗仁的第七軍與何應欽的第一軍也紛紛趕赴龍潭。於30日清晨從東西兩個方向會攻龍潭,逐步從東、西、南三個方向包圍孫軍,到下午5時,孫軍先後從龍山、虎頭山、七里觀潰敗,6時,龍潭被國民革命軍奪回。31日清晨,孫傳芳再一次發起猛烈進攻,企圖奪回龍潭,白崇禧、何應欽配合無間,孫傳芳與之激戰三小時,未能重奪龍潭,加上國民革命軍從側面攻擊,孫軍逐漸不支,於下午2時全線潰退。
孫傳芳見難以挽回敗局,於戰鬥結束前便設法脫身,帶左右親信及小部人馬乘小火輪渡江逃走。主將劉士林、段承澤、上官雲相等人也先後乘坐小划子及小火輪逃回北岸,只有第十一師師長馬葆珩還率部與國民革命軍中的桂軍搏殺,當他得知第二路總指揮劉士林和各師、旅長已全部撤走時,立刻突出重圍。
但此時已是大隊人馬全線撤退中,江邊擁擠不堪,由於船少人多,很多人在搶著上船時落水,上了船的也很難倖免於難,有的因船隻重心失衡而翻船落水,有的因船隻超載而翻船落水;有的船被落水者扒翻,有的船被北伐軍海軍開炮打翻,有的相互撞沉。
馬葆珩總算擠上了船,但因船小人多無法開動,岸上又有追兵機槍掃射,不得已跳入江中,身穿背心短褲拼命向江北游去。上岸後已是夜色深重,馬葆珩疲憊不堪,看到附近有一座廟,只好先進去休息,在廊下隨便找了個稻草堆便躺下睡著了。
此時,劉士林就睡在後面的屋裡。劉士林身為渡江總指揮,在撤退時率先逃跑,導致上萬人葬身長江,自覺無顏面見孫傳芳,便決定天亮前逃走。不料在廊下看到馬葆珩和另兩名軍官睡在稻草中,感到十分慚愧,便留下了自己的黑馬。馬葆珩醒後看到劉士林的坐騎,再一問廟裡人,遂明白了怎麼回事。
孫傳芳聽說馬葆珩回來了,頓時悲喜交加。待見到馬葆珩短褲、背心的落魄模樣,竟流著眼淚說:「你能回來真是太好了!我們正準備為你開追悼會呢。」隨後送給馬葆珩5萬塊錢,並派專人送馬葆珩去天津休養。
「龍潭之役」是孫傳芳一生中最為慘重的一次失敗,戰後江中浮屍擁擠不堪,排成數里長陣,延綿漂流;龍潭高地上更是屍橫遍野,臭氣熏天。此役孫軍「計陣亡、淹死兩萬多人,繳械被俘兩萬多人,陸續歸隊的一萬多人」,國民革命軍亦傷亡8000多人。