Massive ships are definitely the way to go. They could carry larger crews of hundreds or thousands. The crew could be a lot less highly trained in multiple areas and be specialized in their own with multiple others similarly trained. Think of the way an aircraft carrier is crewed and run.
A ship of that size would produce a fair amount of shielding by virtue of size and amount of material alone. In times of solar flares the crew could move deeper into the ship for shelter. If you can build something of that size you can also include multiple layers of hull to help protect against small meteorite impacts.
We can build something like that right now. But the cost is high. No one will commit.