Hi, OSX is supposed to defrag itself if you have enough Free Space on the Hard Drive, though I find it actually Fragments it nearly as much myself,
Most of the time Defragging the drive will be short lived, the real Secrets are to keep as much Free Space as you can on the boot drive, say 30% or 100GB, which ever is more.
Secondly, don't put files on the Desktop, that's a special folder where OSX consumes 3 times the resources to display it/them.
The cheapest/easist is likely AJ,
I think you should get Applejack...
http://www.macupdate.com/info.php/id/15667/applejack
After installing, reboot holding down CMD+s, (+s), then when the DOS like prompt shows, type in...
applejack AUTO
Then let it do all 6 of it's things.
At least it'll eliminate some questions if it doesn't fix it.
The 6 things it does are...
Correct any Disk problems.
Repair Permissions.
Clear out Cache Files.
Repair/check several plist files.
Dump the VM files for a fresh start.
Trash old Log files.
First reboot will be slower, sometimes 2 or 3 restarts will be required for full benefit... my guess is files relying upon other files relying upon other files! :-)