I always recommend starting with a basic configuration and then adding virtual domains, virtual users, ssl, etc. as you go along.
That way you can identify which aspect of your configuration is causing problems.
You current configuration has a lot of settings, some of which may not be necessary.
If you want to take this approach, you can start with
Postfix has several hundred configuration parameters that are controlled via the main.cf file. Fortunately, all parameters have sensible default values. In many cases, you need to configure only two or three parameters before you can start to play with the mail system.