大历十一年(776年)八月,都虞侯李灵曜在汴州(今河南开封)叛乱,他杀死兵马使、濮州刺史孟鉴,并勾结外部势力田承嗣,企图控制汴州、宋州。
九月,朝廷诏命淮西、永平、河阳三城、淮南、淄青五镇出兵讨伐李灵曜。
永平节度使李勉令刘玄佐率领永平军主力前去平叛,刘玄佐进兵神速,他趁李灵曜身在汴州并无防备,偷袭宋州(治宋城,今河南商丘)得手。
至此,李灵曜所控制的汴宋二州已失其一。李灵曜连战失利。十月,即被诸镇兵围困于汴州城内。
外部势力田承嗣见李灵曜危在旦夕,即派田悦率兵火速救援。田悦率兵南下,于刘玄佐老家匡城击败永平、淄青两镇兵,并乘胜向汴州挺进。
不料在汴州城北安营后,夜间遭淮西裨将李重倩率轻骑数百袭击,大杀一阵,营内惶恐不安,此时刘玄佐率永平军赶到,与淮西节度使李忠臣、河阳三城使马燧合兵一处乘机进攻,田悦军不战而溃,损失惨重。
李灵曜绝望无救,连夜出逃,逃跑中被俘,被送往京师处斩。次年,也就是大历十二年(777年)朝廷将宋州隶属于永平军辖下,经李勉奏请,授刘玄佐为宋州刺史。
唐德宗建中二年(781年),刘玄佐又被加封为御史中丞、宋亳颍节度使、宣武节度使,建号宣武军。
同年,平卢节度使李正己死后,其子李纳匿丧谋叛,而其族人李洧以徐州(治彭城,今江苏徐州市)归顺朝廷,李纳遣兵围之。
朝廷下诏,令刘玄佐等诸军援救李洧。十一月,刘玄佐与神策都知兵马使曲环、滑州刺史李澄及朔方大将唐朝臣共同援救徐州,大破魏博、平卢军,斩首八千级,迫使其解围逃窜,江淮漕运开始疏通。
刘玄佐因功被加为御史大夫。此后,刘洽又克复濮州,收降敌将杨令晖;分兵攻略濮阳,招降守将高彦昭,打通了濮阳渡口。
朝廷再次论功,加刘玄佐为检校兵部尚书兼曹濮观察使,加食邑四百户,旋即加授淄青兖郓招讨使及汴滑都统副使之衔。
刘玄佐在屡立战功,平步青云之后,仍然能保持清醒的头脑,亦能知错就改。
他在镇守汴州时,听信谗言要杀将军翟行恭,左右无人敢上前劝谏。处士(没有任官职的读书人)郑涉为人诙谐,善用隐语,他求见玄佐,说:“听说翟行恭得罪了大人,大人借机想杀他抵罪,希望大人能答应我一个小小的请求,翟行恭行刑后,让在下看看他的尸体。”刘玄佐觉得奇