For what it’s worth - I’m a professional baker so my experience may differ from the home bakers among us.
When I build a cake, I layer the cake and filling, and then wrap it for an overnight rest in the walk in. The next day, I crumb coat and apply the final coat of icing. This way, any settling happens overnight. I use chilled cake layers to help with handling - room temp layers are much more fragile and prone to breaking.
I don’t use cream cheese icing for the outside coating because I find it too translucent, even when multiple coats are applied. So I use a meringue buttercream as the outside coat of frosting. As a filling, it’s wonderful, and I use a buttercream dam, especially taking care to build up the corners where sagging is more likely to happen. If you build up the corners too much, though, the center sides look saggy so you need to be careful to make sure each layer is level before going on to apply the next layer of filling and cake.
When I stack tiers, I use the large plastic dowels or bubble tea straws (cheaper, and just as strong) and cardboard rounds. But this weekend I have a three tier carrot cake which I know will be heavy so I’m using separator plates and “hidden pillars” instead of dowels. This is insurance that the cake won’t sag; otherwise a cardboard round will begin to flex and not provide any support, which can be a recipe for disaster during transport and when the cake is sitting for a few hours on display. I also don’t assemble the tiers too far in advance; the cardboards can absorb moisture and become weak. If you use a separator plate, this is not an issue. But for the volumes I’m doing, it’s more expensive than cardboard and there are only so many places I can absorb costs without passing them on to the client. I bake on day 1, build the tiers on day 2, and do the crumb/final coats and final assembly on delivery day. It makes for long weekend hours.