Thank you for using JustAnswer.
I'm sorry to hear about your situation. No, you would not. Freedom of speech, or other Constitutional claims, are claims against the government. Note here that it's a private entity (CafePress is not a governmental agency or actor, but private business) that is saying that it will not print your shirts. A private entity can refuse your business for pretty much any reason. For example (and it's an extreme one, but it illustrates the point) if you were to wear a shirt that says "My Employer Sucks" to work, your employer could tell you to take it off or even fire you for doing so. You can't claim freedom of speech. But if you were to wear "My Government Sucks" in a public park and you were arrested for it, that would be governmental action against you and you could have a free speech claim against the government. The point is that the government has to act against you for you to have a free speech claim. Civil liberties (freedom of speech, religion, press, assembly, etc...) are between a government and its citizens, not between citizens and citizens or citizens and businesses.
In short, CafePress is entirely within its rights to enter into contracts such as this, or even to refuse to print something that it doesn't want to print for whatever reason.
Note that you can still print the shirt. That's not the issue. But you cannot compel CafePress (or any business) to print it for you. If you can find a business to print it for you, there's no issue in getting it printed. But again, it's not a free speech issue because it's not a matter between you and the government, but rather a matter between you and another private entity.
I know this is probably not what you wanted to hear, but it is the law. I hope that clears things up anyway. If you have any other questions, please let me know. If not, and you have not yet, please rate my answer AND press the "submit" button, if applicable. Please note that I don't get any credit for the time and effort that I spent on this answer unless and until you rate it positively (good or better). Thank you, ***** ***** luck to you!