No leei las opciones que planteas, ya que estoy apurado:P te digo lo que haria yo:
Cuando se logea se actualiza un campo de la BD timestamp con la fecha date(c), y luego con un cronjob, ejecutas cada X tiempo un script que tenga un if comparando si ya ha pasado el tiempo necesario para desactivar la cuenta.
Esto podria ayudarte:
http://www.webtutoriales.com/tutoria...fechas.73.html
Saludos