I would also love to do that. Ashley said that Construct 3 will have editor plugins. But for now, I guess we'll have to deal with some duplicate code in every project.
To achieve the modularity that you described, we need the addon sdk to be able to create sprites and objects that have no definition in the project. Say for example that I need a tooltip, I will certainly need to create a sprite for the background or frame and a text object in my Construct 2 project, then I would need my addon to create these objects and display them correctly. But the need to create the objects in the Construct 2 editor completely defeats the purpose. So we need a more powerful and mature sdk.
As someone who has developed games using pure javascript, C, C++ and C#, I completely understand that code repetition is a bad thing in many ways. However, I try to look at it from a positive perspective: it is an incentive to always improve your code with every new game that you make, and not be limited by an old game-specific plugin that you made ages ago.