Call the leftmost column of data to be averaged ldata, 2 in your sample.
Call the leftmost column of averages lavg, 10 in your sample.
Looking at the first average of each pair, the first computes columns 2 to 4, the next columns 2 to 5, then column 2 to 6, ... Expressed as an offset from ldata, it is ldata+2, ldata+3, ...
In other words, every time you move to the average two columns over, you process one additional column of data. Let cols denote the number of columns away from lavg. Then the rightmost data column to be processed is rdat = ldat+2+cols/2.
Looking at the second average of each pair, its rdat is always one less than the rdat of the first average. That is, subtract one whenever cols is odd.
These relationships yield the general formula
=LET(ldat,COLUMN($B3),lavg,COLUMN($J3),cols,COLUMN()-lavg,oddc,MOD(cols,2),rdat,2+ldat+INT(cols/2)-oddc,AVERAGE(INDIRECT(ADDRESS(ROW(),ldat)):INDIRECT(ADDRESS(ROW(),rdat))))
You need to change the values for ldata and lavg to match where your actual data is. Put the formula in the top left average cell and copy it down and to the right as far as needed.
If you intend to do this for every day in the month, then your averages have to start past column AE. This will probably preclude viewing the data and the averages simultaneously.