When Melvin decided to hold onto Fielder, he traded the farm for Marcum and Grienke (both with two years of team control)
Losing Cain stung, although that loss was pretty easily offset by the addition of Gomez in a future trade, but besides Cain the only other thing they lost was a knucklehead known more for his 40-hands photo than anything he did at the MLB level on the field and a slick fielding SS who never hit enough to miss him. Odorizzi also made a nice career for himself as a mid to bottom of the rotation starter, but the upside that Greinke brought to a Brewers team desperate for a TOR starter but good enough to win it all offensively was well worth sending over a handful of prospects.
I don't think there's an obvious "only way" to approach Burnes this year for the overall longterm helath of the franchise - it's not a cut and dry "trade him no matter what" or "roll with him 1 more season before he leaves". The Brewers have the budget flexibility to play "wait and see", afford whatever arbitration salary Burnes will earn if they retain him through arbitration, and see how things shake out with any trade offers between now and the deadline. Given the current state of the NL Central, I think the Brewers would have to get a massive trade offer to move Burnes now - if it seems just like a fair deal, why not hold onto him into the season and then see how the Brewers start? If they're scuffling, they could get a "fair deal" a month or two into the season as well, particularly if a team obviously geared up to try and win it all has some significant pitching injuries in their rotation. The Dodgers and Rangers are already in that spot with arms that either won't be ready to start the season (DeGrom/Scherzer) or starters with extensive injury histories that could easily struggle early (Buehler, Glasnow, Kershaw, ...basically the entire Dodger rotation at this point).