The point of RSC is that you get the behavior you’re describing without the dev pain points you are describing, and with a high degree of flexibility in customizing what code gets run/sent over the wire where.
HN likes to dunk on React but I think the paradigm is pretty cool and I hope that other meta frameworks beyond NextJS find ways to support it in simpler to follow ways - Tanstack Start has a promising looking philosophy, excited to see where they land on.