My son has done similar and longer flights yearly since around that age, because our family are split across continents.. before 3 we had as many good flights as bad to be honest, and it generally all came down to tiredness. If we managed his sleep well, it would be great.. if we didn't, it was awful.
So I would recommend you really think about sleeping plans. E.g. get him to do as much exercise in the airport as possible, know when a full sleep (if it is a night flight) or a nap will be required and work towards that. Does he have a comforting blanket or toy to sleep with? Can you mirror as much of your normal sleep routine as possible? Bed time story, clean teeth, wash face etc.
For beds, we tried the ones that fold out and sit on suitcases but my son was too long and it was always better to have him between us. Head on one of my us, feet on the other.
We would book near the back of the plane because that is where the empty seats normally are.. and if we saw one after all has boarded (or a whole row sometimes...) we would ask the crew and they usually let us use it, which often meant making sleep more comfy because we could spread out..
If you can avoid tiredness though, everything else is pretty fine..bring a bag full of pens, paper, books, toys, activities etc. And then just ballence that with as much screentime as you are comfortable with.
Water drawing books worked well, sticker books, magnet books, etc.
Also you can buy trays with edges that can go on airplane foldout tables.. they were great because otherwise toys just fall off those small smooth tables all flight...
Oh and lollipops were always the best solution for ear popping. Let them suck away during takeoff.. sorry about the sugar, but the sucking action helps their ears a bit, and lollipops are easier for them to hold/suck for an extended period of time.
It's hard work, because in between sleep and screens it is just keeping them happy and entertained for hours on end.. but breaking it up into small chunks helps.. read books for a bit.. play for a bit.. walk for a bit.. eat for a bit.. play for a bit.. watch for a bit.. eat for a bit.. draw for a bit.. etc.