We experienced the same issue about a month ago. It began occurring after we upgraded from FreePBX version 10.13.66-15 to 10.13.66-20.
I noticed that swap space was filling up so I doubled the memory on the server.
I was then able to diagnose that we had over 9000 tftp sessions showing up in the process list (ps-faux | grep tftp) after a couple of days.
After I killed those and turned off tftp I was able to get the system to stabilize.
My final solution was to move the tftp provisioning off onto another server. I mounted that servers /tftpboot directory onto the /tftpboot directory on the pbx and that allows me to make the changes in Endpoint Manager.
So far that has worked.
I have other FreePBX installations running the same version without any issues. I suspect that it has to do with one particular phone we are using, the Cisco CP7911, that is causing the issue but I can’t prove that.