So the real story is slowly getting out.
Voltage, current, power, RMS, Average, peak, and now THD & voltage sag
1) For a real power meter you should makes reading continuously.
2) For a school project, and maybe for a real meter it is OK to read data in only 20% of the time and then spend the next 80% of the time doing the math and displaying the data. If you analyze 4 cycles of power and miss the next 20 cycles then analyze the next 4, this will not change the voltage or current readings. I think it will not affect power or THD.
I would give up on op-amps ahead of the AVR and make a “oscilloscope” project where you read in the voltages store one cycle (or even ½ cycle), do the math, then read in another cycle. Your different modes are just math!
As a joke I looked at the Tiny AVRs that only have 512 memory max. That is not much data to do the THD on but could work. Get a part with hardware multiply because the math will be much faster. This is not Agilent (HP) quality but, with 500 to 1000 samples over one cycle (or ½ cycle) you could get average, RMS, PK very well. With some clever math THD can be measured.
It looks like this is a power line meter. Your readings will be 100v to 130v so 8 bit ADC will work. A real meter might measure 1000 volts one time and 1mV the next. I see no need for you to use 24 bit ADC.
I have done this where hardware did the average and RMS and I have done this in software. If you choose the later you can add functions later without changing the hardware. I see an AVR, LCD and a handful of Rs and Cs in front of the ADCs. + A big math project.