Isn't most of the nvram stuff part of broadcom's SDK in any event?
Back when I was doing handset dev, we also had nvitems, and when we moved towards an embedded filesystem, we still kept the nvitems, but created an app that actually stored the data in efs instead... (efs was proprietary, but similar to jffs, not as modern perhaps, but similar concept - we had do that because of the NOR to NAND transition)
Almost everything that requires to be persistent in the basic BCM SDK for their HND platform is stored in nvram. There wasn't even an official JFFS partition until a few years ago (I had to manually write the kernel code to partition the mtd device back in the RT-AC66U - that was scary work I can tell you).
Asus started officially enabling it maybe 18-24 months ago. First it was used to store some files for the Trend Micro engine (such as downloaded signature files for DPI). Then, then moved the OpenVPN stuff. A few months ago, they started using it to store networkmap data as it was easily filling up all nvram on large networks.
The nvram partition remains the primary location to store any configuration. Why the hardware has 128 or 256 KB allocated to the partition yet BCM's SDK only allocate 64 or 128 KB out of it is beyond me. And why their CFE code hard limits nvram values to 100 bytes is even more beyond my understanding. No need to say that doing an "nvram show" from CFE is a sure way to freeze the bootloader, as it stumbles on those long nvram values... Asus and I both increased the limit within the firmware (and the kernel driver is even clever enough to dynamically allocate it if it's larger than a pre-allocated buffer), but the CFE remains stuck with a 100 bytes limit.
Some router models also have trouble accessing anything above the lower 32 KB of nvram. That's the case of the RT-AC56U, where having critical BCM settings stored above the initial 32 KB can lead to problems requiring a serial TTL cable to recover. When that happens, the Ethernet switch fails to initialize, and the two buttons aren't recognized either during boot. So if you don't have a working firmware installed and you need recovery, the only way is with a serial cable and a constant stream of Ctrl-C to break into CFE, so you can wipe out nvram, and start with a factory default setup, where the switch is once again working, and you can proceed with firmware recovery.
Friend of mine soft bricked his brand new RT-AC56U that way, when flashing Tomato. He brought it to me so I could revive it.