Monitor total data usage by Mac address
I don't want to make bandwidth limiters. I want to be able to track total data usage for 2-3 months at least and do it by Mac address. Power cycling the router should not erase the data. Any way to do it?
Use a switch port in monitor mode and send all your traffic to something designed to keep the statistics you want.
NTop or NTopNG can give you these general stats for any devices connected through the firewall. You can install them in the Packages section.