We are not talking about defeating land advance, but defeating any naval(riverine) landing attempt. In 1945 Amur Flotilla had 8 big and heavy armed monitors, 13 gunboats and 52 armoured cutters. Manchurian Sungari War Flotilla was smaller: 4 monitors, 11 gunboats, 15 armoured cutters.
You are confused. Andrew asked if you could use the river to support a campaign inland - and you can. You send units down the land sides - both banks - and supply them in THEIR rear. Enemy gunboats matter not a whit by day - you would blow them away. The might attempt to sneak by in fog at night - and occasionally might do some damage. But there is no need to "land" on the river banks - you just march down them.