How to spawn and kill objects during animation to save memory?
Here are some ideas:

One of the main problems is probably that the fan has way too many faces (you even have completely useless bolts, you certainly won't make any close-up shots on this), so you should simplify it a lot: Make it an independent object, delete a lot of edge loops,  give it a Subdivision Surface modifier with a level of 1, and an Array modifier so that it follows the tunnel. Tricks to simplify: Use CtrlE &gt; Un-Subdivide, or use select edge ring, Select &gt; Checker Deselect, Select &gt; Select Loops &gt; Edge Loops, and CtrlX to dissolve. You could also make a very simplified version if it's far away from the camera. Here is just a beginning of clean-up:




Slide the image texture along the mesh (wall and road) with the Mapping node (not sure it will save a lot of memory though, lol):



Render an image of a long tunnel perspective and use this image in your 3D scene to fake depth (or use a mirror?)
Make only very short sequences