Also, there are many ways how you can "pay for" people: You can increase their salary. You can hire more of them, so that they don't have to work overtime. You can buy them better tools. You can rent a working space that actually contains rooms with doors. Etc.
Different people have different preference here. But if you have an open space, and zero budget for tools, and chronically understaffed projects, and the salary is kinda average... well, you send a loud message.
Try it the other way: let the veterans have their own room with doors, give them the tools they need, maybe reduce their work time to 6 hours a day while keeping their salary competitive... and most of them will be happy to stay.
Or be honest and admit that you prefer it the way you have been doing it so far.