My guess is for stability reasons, as well they implement changes that become live on a restart. Although I would agree it's a bit aggressive as is.
I had this told to me once before because I was very confused, but my memory is terrible so i'll just tag @irritatingness and @Deathbyrussian
Mc restarts as everytime it restart it clears everything and basically refreshes everything making the server run faster until it gets clogged up with stuff again atleast thats what I know.
Exactly what Vector said. To my knowledge (memory so I might be wrong) it does this to increase the performance of the server, since a stretched period of activity on the server makes it lag and it might lead to it crashing if theres too much activity. Keep in mind a server has to register and store data from all the players on it simultaneously , but a server has a limited capacity. Thats why they also remove ground items and entities, because unlike block changes that can be saved into the world (reason for the restart), those are temporary data that probably takes of a lot of memory on its own. So in conclusion´, from what I know, its done to clear the cache and make the server run smoother. Might be wrong, might be right, just giving my two cents. Hope this helped in any way! -Kyle
Basically what the others have stated; memory is used up as time goes on. Memory is usually freed after it's 'garbage collected' when it's no longer relevant or in reference. Some plugin developers have bad habits that make objects stay in reference for far longer (or permanently) than they should. This means that as those plugins do things the memory available is eaten up slowly over time and eventually leads to a server crash when all memory is in use and critical functions need to occur. I'm currently busy irl until Tuesday but I've stated before I'd change this to 3 hours and it should be fine. As things are worked out for player experience I'll be going over each plugin we use and inspecting them for memory management to try and weed out offenders/fix them.
Would it also be possible to extend the time between the number of entity removals? It can be pretty annoying for those who are using mob farms.