被 (bèi) vs. 叫 (jiào) vs. 让 (ràng): regional difference? formality difference? I know that with a 被 (bèi) sentence, you are allowed omit the object: S + 被 + (O) + Other elements, e.g. 河里的鱼都被毒死了 (Hé lǐ de yú dōu bèi dú sǐ le) whereas, when using 叫 (jiào) or 让 (ràng,) the object cannot be omitted, it must be included, so:

我的自行车被小偷偷走了。 (Wǒ de zìxíngchē bèi xiǎotōu tōu zǒu le.) -- OK
我的自行车被偷走了。 (Wǒ de zìxíngchē bèi tōu zǒu le.) -- ALSO OK
我的自行车叫小偷偷走了。 (Wǒ de zìxíngchē jiào xiǎotōu tōu zǒu le.) -- OK
我的自行车叫偷走了。 (Wǒ de zìxíngchē jiào tōu zǒu le.) -- NOT OK
我的自行车让小偷偷走了。 (Wǒ de zìxíngchē ràng xiǎotōu tōu zǒu le.) -- OK
我的自行车让偷走了。 (Wǒ de zìxíngchē ràng tōu zǒu le.) -- NOT OK

What I want to know is, are 叫 (jiào) and 让 (ràng) more colloquial, more spoken, less formal, more Northern, more Southern, or anything different (besides what I just outlined)?
If possible, does anybody know what the reason is they exist? Why these variants exist, and why they're slightly different to 被 (bèi)?
Cheers
Good question.

Although I am a native chinese speaker, it is difficult for me to answer your
questions.

Generally, when talking about formality difference, 被 is more formal than the other two, 叫 and 让. However, it is still very often for us to use 被 in some oral conversation. But I don't know which one among these three is more northern or more southern. I live in the north part of China and personally, I use 让 more often.

About the difference among these three, I think one important point is that 叫 and 让 are more often used when you know who or what is the objective. Just as the examples you give above, we would often say: 我的自行车被偷走了 but rarely say 我的自行车叫小偷偷走了 nor 我的自行车让小偷偷走了, because actually we do not know who is the thief. But when we want to express that some specific person borrows my bike, we would say: 我的自行车让Mike借走了. All in all, there are only slight differences among them in terms of meaning and you can try to use any one in daily life.

One more word is that you can also use 给 to express similar meaning, such as 我的自行车给小偷偷走了.