That’s because of the translation chains biblical names had traversed before they came into English or Russian.
Roughly speaking, it’s
(name’s language of origin) → (Hebrew) → Greek → Latin → English
and
(name’s language of origin) → (Hebrew) → Greek → Old Slavic → Russian.
The [b]→[v] sound change had happened in Greek during the centuries between the Latin and the Slavic translations were made. So, the biblical proper names appear with [b] in the Latin translation and with [v] in the Slavic one according to the Greek pronunciation of that periods.
(Btw, the reason why the Cyrillic letter В looks like the Latin letter B is the same. Both letters are descendants of the Greek Letter Β, but the borrowing happened in different time periods.)
It’s also amusing that [b]↔[v] changes in the word Babylon had also happened in Accadian → Hebrew and Hebrew → Greek stages of the chain. In Hebrew the [b] and [v] sounds are allophones with [v] appearing after vowels and [b] elsewhere. So, Accadian /bābili/ (transcription from wikipedia) became בָּבֶל [bɑ̄vɛl] in Hebrew. Then, Ancient Greek language lacking the [v] sound made it back Babylon.