transform.lookat() limitation...

void Update () {
transform.position = GetCenterPoint ();
transform.LookAt (targets [1]);
transform.rotation = Quaternion.Euler (0, transform.rotation.eulerAngles.y, transform.rotation.eulerAngles.z);

	Vector3 GetCenterPoint(){
		var bounds = new Bounds (targets [0].position,;
		for(int i = 0; i < targets.Count; i++){

You’re setting the rotation twice. Store the "look rotation in a local variable, modify that one and then set the rotation. Use Quaternion.LookRotation(target - transform.position) to get the look rotation