Does randomization really allow us to make claims of causality? Lets say two groups are compared. Subjects are randomly assigned to each group, then a treatment is given to half while a placebo is given to the other half. All aspects of the experiment (order of treatment, etc) are also randomized. The treatment group gets a much higher "score" than the placebo group on average, but not all in the treatment group score higher than all in the placebo group. When this occurs it would be usual to attribute the average difference to the treatment.
I would say two things against this:
1) The "weak causality" argument. The results are conditional on the exact environment under which data was collected. The treatment may not increase the scores if some seemingly minor aspect of the experiment is changed. In other words, the effect of the treatment is only "unmasked" if some other (unknown) criteria is/are met. The exact conditions of the experiment will never be repeated again.
2) The "randomization guarantees nothing argument". Randomization does not guarantee that the two groups are balanced on all important factors at baseline. It only makes it unlikely there is severe unbalance. 
 A: Your first point is about external validity. This is a problem with many experiments, especially on humans. This includes randomized trials. Just because a treatment works in the relatively controlled situation of a clinical trial (or other experiment) does not mean it will work elsewhere. However, this is not directly about causality. 
Your second point is simply that we can never be certain of anything based only on statistical evidence. Indeed not. But 1) So what? Life is uncertain. Every science (whether based on statistical evidence or otherwise) makes mistakes.  2) We can increase the evidence of causality in various ways: a) Stronger statistical evidence (a large effect size is more convincing than a small one)  b) Replication in other circumstances c) By figuring out the mechanism (e.g. we know a lot about how tobacco uses causes cancer).
"Proof" is something mathematicians get to; I don't think we data analysts can. But we can get overwhelming evidence. 
A: It is widely believed that the answer to your question is "yes". 
Because of your second argument "Randomization does not guarantee that the two groups are balanced on all important factors at baseline" I am not convinced either. 
In more detail, I considered several quantitative models to validate the often-heard claim that "[Randomization] only makes it unlikely there is severe unbalance". 
However, in general, the last sentence is wrong. You may find the results in "Randomization does not help much" (see http://xxx.tau.ac.il/abs/1311.4390).
