Hi Anuj, unfortunately this cannot be done, at least not as you have envisioned it. There are three ways to relate one record to another record in AdaptiveWork: You can use a reference to object field, a reverse reference, or a link. Of the three, only a link allows for a many-to-many relationship; that is how multiple projects can be related to multiple portfolios. The link that connects a milestone to a project, however, is special: It's part of a hierarchy, so it acts more like a reference to object field in that respect: It's a many:one relationship. And while you can create custom links between custom objects and out-of-the-box (OOTB) objects, you cannot create a custom link between two OOTB objects, e.g. between projects and milestones.
Your best option might be to leverage shortcuts, which would allow milestones to appear in the workplan of multiple projects.