If invading planets ended up a slower, more tedious affair maybe wars can be slowed down, akin to how in EU4 wars can drag out for a long time and a side which has lost 10 big battles can turn around and win the 11th and get back into the war. This does not really happen in Stellaris. There should be more incentives to split up the fleet and siege planets and space fortresses in order to conduct a war successfully. Instead a bombarded planet can fall in a week - I haven't read much sci-fi but are there many instances were a defended planet can fall in a week of fighting?
I think that in addition to an invading army pummeling the defenders, a navy securing supply to the inading army and providing orbital bombardment should be needed. And it should take a long time to overcome a prepared enemy - it should not be just one battle lasting a few weeks, it should represent the slow pace at which a planetary campaign is conducted if resistance is stiff enough. Several months, even years, should be necessary. This will force a winning side from one of the "doomstack" battles to split up their navy and army to press their advantage, just as in EU4. The same should apply to space stations, that should be possible to occupy in addition to completely destroy, so that an invader can entrench themselves in hostile space.