Ok, what's happening is when CB Gallery generates the primary asset for the gallery it will do so as profile.USER_ID.field.107 then check access to the tab and its field. If you're not logged in this would be profile.0.field.107 for example. So a guest user doesn't meet your condition resulting in the gallery field being inaccessible to them. That's actually working as expected so I may not have a solution beyond you using double wildcard to skip the field access check. The reason you didn't have this issue before is that behavior wasn't working right.
Typically the best way to avoid a gallery being access checked against a field is to use a custom asset. For example host.[user_id] would probably best fit your usage. Then you'd just use host.% in your module, which should skip the access checking behavior.