1. You can write a loop script that will find each object inside your container - that is, each object that has a "parent" property of "bottle". In the loop script, unset the parent property. Here's an example to show you what I mean:
2. This isn't built-in behaviour in Quest 4, but you can set it up using scripts. On the Container tab in QDK you'll see you can have a custom script run whenever you try to add or remove an object to/from a container, so in this case we can just use a numeric variable to keep track of how many objects we've added, and manually add the object using a script only if there is enough space.
Here's an example: