Una variable no es más que una etiqueta que apunta a una dirección de memoria donde está el objeto, de forma que podamos llegar al objeto. ¿Para qué quieres que exista una variable por cada objeto de la lista si puedes llegar al objeto a través del array?
Lo que tienes que hacer es crear una variable local dentro del for, de forma que en cada iteración del bucle esa variable apunte a un nuevo objeto. El nombre y apellido los tendrás en dos arrays para poder leerlos cuando estés en el bucle.
Mejor todavía sería que esos nombres y apellidos estuviesen en un fichero plano de texto y los leyeses de ahí.
Cita: Al realizar el for, me toma el nombre de variable como si la intentara utilizar como variable y no como el contenido de esta como nombre... ahh!!
Esto no lo he entendido.