I haven't read the whole thread, just the first page, but it's not an either/or IMO.
For my current sandbox, I made a simple XP system which rewards progress, rather than the means used.
I took the old 3.x system, which is convenient because each level you need your current level times a thousand XP to reach next level. Then, each encounter simply gets a rating from 1 to 10, and a level (which is typically the party's level, assuming they are pursuing level-appropriate goals). The players can pursue their goals however they deem best. If they are infiltrating a fortress, they can kill the guards, sneak past them, lure them into a trap, or lie their butts off. Regardless, they get the same XP for the encounter. And it is really easy to reward on the fly once you realize that the 1 thru 10 rating corresponds to the % of a level the encounter was worth, for a level appropriate challenge.
Since it's a table tradition, I also give an end game reward each session, which is overall based on progress and role-playing. That is 5 to 25 times the party level.
Finally, because I have a number of players who LOVE combat, I modified the combat reward slightly to encourage the occasional slash and hackathon for their benefit. Combat encounters get rated from 1 (easy) to 5 (double deadly) instead of 1 to 10. However, a combat encounter also gives you a rolling bonus from 1 to 3 (depending on difficulty of the encounter). That bonus gets added to the next encounter's rating. However, a short rest reduces the rolling bonus by 1, and a long rest resets it to zero (I allow my group a choice when they sleep, whether to gain the benefits of a rest or not). As such, a series of combat encounters with few (or no) rests can end up being quite rewarding.
Milestone leveling works fine (I've played in campaigns that used it). But it's not the only way to reward non-combat solutions. Even before I hit upon this idea, I would simply award the full standard 5e XP reward if the players successfully bypassed an encounter without fighting.
You just want to reward the behavior you want to encourage. That can be done with milestone levels (attaining milestone goals). It can also be done with an XP based solution, by simply giving the players full XP for overcoming a challenge, regardless of the means used.