This conversation is a waste of time if we are only considering teams like ManU, AC milan and Barcelona etc.. as BIG clubs. For argument's sake, let's limit the discussion to European teams There are only a dozen or so countries that have meaningful numbers of citizens (past and present) in these so-called BIG clubs. When you think of citizens of countries outside where these clubs are based, then it is only a handful. You are a top class professional if you are playing regularly for any team that is consistantly in the top flight of one of the major European leagues - Spain, Italy, Germany, England. Then add the top teams in other leagues such as Lyon, PSG, Marseille (France), Porto, Benfica and Sporting (Portugal), Ajax, Feyenord, PSV (Holland), Galatasaray, Fenerbace (Turkey) Rangers, Celtic (Scotland), Olimpiakos, Panathanaikos (Greece)..etc. If you've spent and time in Europe you will realize that these are all huge teams and the level of football and the week-in-week out pressure to succeed doemsticallya nd n Europe is unreal...
At their peaks, Dog, Shaka, Latapy & Yorke were/are all starters for teams pushing for honors in some of the top leagues in Europe as well as in the UEFA Cup and Champions' league. They should not be part of this discussion because they have essentially made it to the top of professional football. The fact is they are in the vast minority of professional footballers.
Now..to answer the question, in order of importance (in my opinion):
1) lack of quality
2) lack of discipline and drive
3) poor management/agents
4) work permit issues
5) lack of marketability/ exposure - hmm..I could get a Brazilian or a Trinidadian of the same talent for the same money ...who you think winning that battle...
6) discipline and drive
5) bias - the caribbean player has to fight the stereotype that he is skilful but lazy. As opposed to say an African player who is thought of as skilful but hungry