I hate to say it but when the defrag proggy it self is affected by what ever damage has been done by cross-link or lost allocation chains, you will get this problem. Also Defrag seems to have a limit on how bady a fragged file system it can recover. I've found that anything over 30% fragmented is iffy. Defrag just isn't reliable after that. Oh and if your win98 keeps crashing during defrag you will get tonnes of lost data so don't do that. Back up and format the drive and reinstall. That is the safest route, or you can take your chances with a 3rd party defrag utility. I've seen norton defrag something windows couldn't, but installing any symantec product is begging for problems as well. So you could trade one problem for another if you want to go that route, but I'd just format and reinstall.
GBU!