I guess because lsof does the important work, and scripting lsof did the job that was needed for fuser. 1 less executable to maintain, where that executable needs to know the inner workings of the operating system.
It has been a perl script since at least Leopard (10.5 is the oldest system available to me). I do not know when it first appeared, and if it was always a perl script.
When was the last time you knew it was an executable, as you say it was replaced?
POSX only requires that there be an fuser command, it does not dictate how that command is implemented.