Chunks can be loaded outside player loaded areas using various means. Redstone and hoppers are more commonly known but grass spread, tree growth, leave decay, farming tiles looking for water and most importantly fire spread can also load chunks. Most of them cause no harm and some are vital for general gameplay but in the one instance of fires it causes more problems then the other ones listed.
Nether spawns with random fires on netherrack that permanently stay lit. Fires also cause chunks to load around them 2 blocks out from the centre in a 5x5 area. Basically any fire next to or 1 block from a neighbouring chunk on any y-level cause a chunk to load randomly anywhere between 0 and 3 seconds. This causes no problem when there are few fires as said chunks get removed during auto saves. But the issue is when some configurations of fires daisy chain making them even auto save immune. It even gets worse where if there are to many fires in a single chunk they keep that chunk permanently loaded. By permanently loaded referring to chunks that are outside player loaded areas.
These fire loaded chunks get loaded and stay loaded when the player enters the nether and simply explore the nether. Even though the player travelling in a specific direction force unloads chunks behind the player, the fires cause chunks outside the player loaded area to load, behind or towards the sides of the direction of travel where the player loaded areas never have the chance to force unload. After a time of nether exploration these fire loaded chunks accumulate and cause unneeded strain on the server.
The pictures provided shows a mod by EDDxample which shows loaded chunks outside the player loaded areas (green being the player loaded, red the extra loaded chunks). He even shows this in a 5 min video.
One of the pictures even show a chunk that have an unusual amount of fires in it for case of demonstration that never unloads. Even after hours of the player staying outside view distance.
Lastly there is even a picture of a random area in the nether (picture taken from the nether roof for ease of travel) to clearly demonstrate that chunks outside the player loaded area stay loaded.
A simple suggestion is to simply have fires not get ticked in lazy chunks preventing them from loading neighbouring chunks. Code provided by Timothy Miller in a picture as suggestion for the fix.