the appearance of Zack and Aerith in the church at the end of AC can be justified with two words "Fan Service"... but really is it so far-fetched to think that maybe Cloud was fondly remembering his lost friends? it's common in some anime for the hero/main char. to chase what they think is someone they recognize just to have the apparition dissapear and it's usualy explained as the characters chasing a memory, maybe something simmilar is happening here, Cloud sees his friends then they fade into the ether as they walk away...