Hi Kevin,
That’s a very valid point and one that I had run into a few times myself. There are workarounds for that however, by splitting the resources into nested stacks.
The serverless framework has a number of plugins that lets you do that. None of them is perfect, and I have even once rolled my own so I get the grouping of resources I want. Given the extra hassle, I do get the temptation to just start lumping functions together and do my own routing in code at that point. BUT, that should be a last resort, the exception, not the default.