Freedom of speech, like it exists in the US is called "Redefreiheit", but Germany has "Meinungsfreiheit", which is not the same. Redefreiheit means you can say anything you want. This is not the case in Germany. Meinungsfreiheit means, you can think whatever you want, but not say whatever you want.
Even in the article of the Grundgesetz you listed, it's stated:
> (2) These rights shall find their limits in the provisions of general laws, in provisions for the protection of young persons and in the right to personal honour.
Or in other words: your freedom of expression ends, when you're expressing something that is deemed illegal by the law.