А как насчет, допустим, объявить переменную i, при каждом новом кадре увеличивать ее значение на единицу, а когда достигнут последний, запомнить? Вот в этот кусок это можно вставить:
while((img = gif.nextImage()) != null) {
frm = new GifFrame(img, gif.getDelay() * 10);
if(last == null)
gifFrame = frm;
else
last.next = frm;
last = frm;
}