Really there is no safe de-fragmenter tool out there for ext3. There is this one but I will not use it.
Fragmentation can get so bad that performance from EXT-3 can drop 7 fold!!
Here is some good info on fragmentation and a comparison of various other file systems.
Now for filefrag, I use this to see how bad an innodb file is fragmented.
TABLE.ibd: 4020 extents found, perfection would be 298 extents
Our wiz of a system administrator Kevin M., who I am teaching to become a mySQL DBA got me hooked on this utility: and he came up with a good method to fix this.
cp TABLE.ibd to a new location
cp TABLE.ibd from new location back to the Database Directory
Tada fragmentation is nearly gone. FSCK will help as well.