これを受けて李舜臣は1月30日に出撃を試みたが天候不良のため出撃できず、2月2日に出陣し、7日に見乃梁で慶尚右水使元均と合流した。さらに2月8日には全羅右水使李億祺が合流し、閑山島沖で集結した後、2月10日に熊川沖へ到達した。その後、巨済・漆川梁および加徳島沖などを往来しながら、明軍の南下と日本軍の撤退を待機した[2]。
しかし釜山方面へ進出しようとすると、熊川に日本軍が駐屯し、釜山への水路を封鎖していた。そのためまずこの日本軍を排除する必要があり、2月10日・12日・18日・20日の各日にわたり、朝鮮水軍は伏兵や誘引戦術を用いて戦闘を繰り返した。日本軍は前回の海戦における朝鮮水軍の威勢を恐れ海上に出ることができず、小型船で一時的に港外へ出ては、追撃されるとすぐに隠れた。また陸上では東西の山麓に砦を築き、鉄砲で応戦した[2]。
これに対し朝鮮水軍は戦列を分けて左右から同時に進撃し、火砲と弓矢を交互に放った。この戦闘は一日に2〜3回繰り返され、多くの日本兵が討たれたが、その数は正確には不明であり、日本軍の勢力は大きく衰退した。しかし日本軍は地形を利用した防備を固めていたため、港内部への深追いはできず、また上陸して追撃することも困難であった[2]。
それでも2月18日の戦闘では、左別将であり李舜臣の軍官である主簿李薛と、左突撃隊の龜船将主簿李彦良らが日本船3隻を追撃し、乗船していた日本兵約100名を討ち取った。その中には金色の兜に赤い甲冑を着けた将が含まれ、被弾して船内に倒れ、結果としてその船を鹵獲した。ただし追撃は深追いできず、戦果確認のため日本兵の首級1を取るにとどまった[2]。
このように日本軍は熊川の港内に籠もり厳重な防備を固めたため、水軍の誘引にも応じなかった。そのため陸軍の支援がなければ日本軍を誘い出すことは困難と判断され、水陸共同作戦のため慶尚右道巡察使金誠一に陸軍支援を再三要請した。しかし金誠一は慶尚道に残る防衛兵力が不足しているとして陸軍派遣は困難であると回答した[2]。
やむを得ず水軍単独での攻撃を継続することとなり、李舜臣は2月22日、李億祺および諸将と協議し上陸作戦を決定した。三道水軍からそれぞれ軽快船5隻、計15隻を用意し、交代で日本軍の停泊地へ突入して地字・玄字銃筒を発射し、日本軍船の半数を撃破し多数を討ち取った。さらに李舜臣が募った義僧軍および三道の精鋭兵を乗せた10余隻の戦船を東は安骨浦、西は諸浦へ上陸させ布陣した。これにより日本軍は海陸から挟撃されることを恐れ、東西に混乱しながら応戦した。上陸した義僧軍は槍を構え刀を振るい、あるいは弓や銃を用いて一日中攻撃を続け、多数の兵を討ち取った。敵将の首級は確認されなかったが、朝鮮軍の損害はなかった[2]。
2月28日と3月6日、朝鮮軍は再び進軍し、火砲および弓矢の使用を以前より強化した。さらに山麓の日本軍陣地に対して火器(火薬兵器)を使用したため[3]、被害を受けた日本軍は撤退したが、戦場が海上と陸上に分かれていたため、首級の確認は行われなかった[2]。
また、当地の日本軍は港内に拠って防御を固めて出撃しなかったため、掃討が困難となり、風向を利用した火攻めを行うため3月10日に泗梁沖へ移動し、火船の準備を進めた。しかし明軍の到着が確認されていなかったことから、日本船のみを焼き払えば追い詰められた日本軍が反撃に転じる可能性があると判断され、火攻め作戦は中止され、熊川には伏兵船が配置された[2]。
結果として、朝鮮水軍は約2か月にわたる海上作戦を終了した[2]。