To fix your collision issues you'll want to set their Rigidbody2D component's 'Collision Detection', to Continuous. Even after this you might want to slow them down slightly, and perhaps even change your method for moving them. If you're using something such as transform.Translate or transform.position to move them this can cause physics issues, and you'll generally get better results when accessing movement through the Rigidbody.