Now that I have fixed the issue I'll just explain what I think happened in case some random person down the line is still using this old and deprecated engine and magically ends up doing the same thing I did.
There were three causes to an increase in CPU usage over time, all of which were unrelated to increasing object counts, array size, text size, larger loops, etc.
1. Looping audio will cause an increase in CPU usage over time if there has previously been a non-looping audio played on that tag. This can be fixed by unloading the audio file for the non-looping audio.
This will be put under the "Engine" category in the debugger.
2. Setting the volume of an audio tag under the same conditions as the previous cause will also cause an increase in CPU usage over time.
This will be put in the "Events" category in the debugger.
3. The "Magicam" plugin will cause an increase in CPU usage each time it is told to follow an object it is already following. This is barely noticeable, but telling it to follow something every tick will build this up over time. This buildup is reset on a layout change, at least in the case of local cameras.
This will be put under the "Engine" category in the debugger.