Il n'y a pas plus de règle pour les noms de cours d'eau que pour d'autres noms.
Pour les fleuves connus des Latins, le genre est souvent féminin en français s'il l'était en latin, et masculin sinon : la Sequana, le Rhodanus, la Garumna, la Samara, le Padus... Mais il y a de nombreuses exceptions — le genre peut changer au cours du temps. La Vire et le Var tiennent leur nom de la même racine celtique qui veut dire « rivière ».
Les fleuves plus lointains ont tendance à être masculins : le Nil, le Congo, le Jourdain... La finale -a
a tendance à féminiser (la Volga, la Volta, la Drina), mais c'est loin d'être systématique (le Niagara). La finale -e
est moins concluante : le Gange, l'Amazone (féminin, clairement en raison de l'homonyme préexistant). Pour certains cours d'eau le genre est ambigü (le ou la Darling ?).
On dit quelquefois que les fleuves sont masculins et les rivières féminines, ou que les cours d'eau de plus haut débit sont masculins. C'est faux en France, et je ne crois pas qu'il y ait non plus de corrélation pour les noms de fleuves étrangers francisés plus récemment.
Pour les cours d'eau dont le nom commence par une voyelle, le genre est difficile à mémoriser même pour les locuteurs natifs. La finale -e
indique souvent un féminin (un peu plus que pour les noms communs, je crois), mais c'est loin d'être une règle générale.
Les Allemands ont le même problème, sauf que la finale a l'air d'influer plus sur les noms importés récemment.