It's unreasonable for the company to want you to stick around for 3 months before you switch jobs, but it's not unreasonable to ask a company to let an employee who has been with them for years 3 months' (notice or severance) before they fire them (as the power balance is not equal - the employee is supposedly dependent on that salary for their livelihood and not everyone can instantly land a new job after being laid off).
Overall even as a business owner myself I prefer the pro-employee German system over the free-for-all American one.