No, they are not: they are free to leave but not get jobs oversees. Americans need permits to work in the EU.
Moreover, it's not the mobility of Americans we were discussing, were we? A foreigner (non-citizen) is NOT free to come to this country (even as a tourist in the case of many countries) and work here. The lack of American citizenship is a barrier to his/her entry into our labor force.
So I think your original comment is correct.
I look at our government as a body that represents the citizens of this country. So because we are talking about a governments program (the H-1B program) I think it is rational to discuss it in terms of the citizens of this country. The lack of American citizenship as it relates to the issue of labor shortages is not a barrier that is of any concern to the American citizen. So why is it that our government should be making laws that have no benefit for the citizens for whom they represent. Since when is our government supposed to be addressing the issues of foreigners?