In my opinion Buddhism started as an Indo-European Heresy denying Being and trying to return to Existence as the fundamental stance toward the world. Being is only in Indo-European languages and is a unique anomaly in linguistics. So Buddhism is trying to return to the norm of viewing things through the lens of existence (what is found Wajud) and to get rid of the illusions of Being. But any enemy you fight you become like them, so Buddhism has the core structure of the Western worldview and especially is mapping the nondual core of that worldview. Buddhism was adopted easily in non-indo-european lands because it already accorded with their worldview based on non-being. But it died in India where it was reabsorbed into Hinduism, when hinduism adopted nondual approaches to their own tradition based on Nagarjuna’s critique of logic. Shankara was key in reinterpreting the Upanishads in a nondual manner, and via this nondual perspective was able to unify the various approaches in the Upanishads, basically he reinterpreted Being as Emptiness.
So the reason that Buddhism diffused into non-indoeuropean centric lands is that it was consonant with their worldview, but more sophisticated due to the encounter with the Indo-European worldivew which had very complex philosophical systems that had to be overcome by buddhists in order to survive the polemic wars with non-Buddhists. Basically Buddhism is like one of the super-viruses. It lives off of worldviews with Being by denying Being effectively, but then it catches on in other worldviews that do not have Being, because it is more sophisticated than anything they have to offer to explain the nature of existence. Anyway, this to me is the reason it survived outside India but not in India. It was coopted in India, but elsewhere it was merely a better description of what people already knew and believed based on their non-indoeuropean traditions and languages.