To what extent could one realistically modify the Unreal Engine source code?

That would be definitively a very very (very) hard task to attempt to refactor UE as much as you explain as a solo dev. During that time, you’d probably have finished twice creating your own game engine from-scratch that suits your specific needs.

FYI, there is a data-oriented approach actually in UE, this is called Mass Entity. It’s kind of an ECS and this is somehow disconnected from the OOP-heavy world of UObjects. Maybe you could have a look, this have been used extensively in the Matrix demo project.

Basically, you have entities that are just integers, pointing to big tables of small “structs” used for various things (position, behavior, movement, etc.). And systems that processes these structs in batches. Definitively 100% data-oriented, and (almost) no OOP.