The origin of this profusion lies in the fact that in Classical Chinese, the generic word for river was 'shui'.

'He' referred exclusively to the Yellow River ('Huanghe' in modern Mandarin) and 'Jiang' exclusively to the Yangtse (called 'Changjiang' these days). Our word Yangtse comes from the name 'Yangzi' applied to one section of the upper reaches of the river in Sichuan if I remember correctly. These original meanings doubtless explain the geographical spread of different modern usages noted in the write-ups above - the Yellow River (aka China's Sorrow because of its frequent flooding) is in the north, the Yangtse in the south.

In modern Mandarin 'Jiangnan' still refers to the part of the Celestial Empire indicated by the literal meaning in Classical Chinese - China south of the Yangtse.

In answer to Gorgonzola's question about which term is used in translation of foreign rivers, it seems he is your winner - a quick flick through my dictionary shows it used for the Nile, Tiber, Thames, Amazon, St. Lawrence and Volga. Didn't find any usage of jiang - though it was hardly an exhaustive search. It's true for the Mississippi too - all together now 'Mixixibihe'.