Since you have laying hens you obviously can’t leave the nest boxes blocked off. You can block them off in the evening after the others have laid as long as you get them open the first thing the next morning before they are ready to lay.
The problem is almost certainly that the older hens are being bullies on the roost and the younger ones are afraid of them. At 3 months they are still very immature compared to the older hens. Maturity has a lot to do with the pecking order, with more mature hens outranking less mature chickens. It’s not unusual for immature chickens to avoid the older hens in those situations. It happens all the time with mine when I am integrating younger chickens into the flock. I suspect the younger form their own separate flock during the day and avoid the older hens then too.
How big is your coop and how much roost space do you have? Do the younger ones have a place to go that is not your nests to get away from the older hens? I wound up putting an extra roost lower than the main roosts and separated horizontally that are still higher than my nests so they have a safe place to go. My first suggestion if you can is to give them an alternate safe place to go that is higher than your nests. If they still sleep in the nests, go out after they have settled in and it’s dark and move them to that safer place. They should get the idea in a day or two, though some can be more stubborn than others.
When your new pullets mature enough to force their way into the pecking order they will move in up to the main roosts. With mine that is normally about the time they start laying though some can take a few weeks longer. What you are describing is nothing unusual. It happens all the time but when they mature enough they will work their way into the pecking order.
Good luck!