Currently I keep MT4 and MT5 separated because they have major difference in the way they operate with trades (positions). The reason why someone will want to create an EA is that he wants to use that robot to place some trades automatically, so this is the most important functionality. In other words, even if you create project for MT4 and you save it as .ex5... it will not work as expected and you have to change the trading logic. The same if you have project for MT5 and you save it as .ex4. It's not that 1-2 blocks are different, it's that you have different trading logic at all.
And I can tell you - it's always better and easier and faster to start something from scratch instead of trying to fix it on most of it's parts.