This one would require a new world-gen in order to take effect!
Rivers must connect to an ocean and will flow in the direction of that ocean.
Rivers begin by spawning as usual. They then path downhill until they find another body of water. When they find an ocean biome first, they spawn a delta biome along that path. Otherwise, they spawn/extend the existing river biome along that path, then continue the search.
This should not replace source blocks with flowing water blocks. Instead, it would only add a direction and a strength to water source blocks that could then be used to push entities along it.
This could also be extended to air currents and ocean currents. There would be no need to spawn special air blocks (I hope). You’d only need to define certain groups of xyz coordinates as having a direction and strength, completely ignoring these variables if the position in question contains a solid block.
Without having flying vehicles available, having air currents would still affect flying entities (bats), could be used to move boats, and could somehow be used to make trees grow in a particular shape.