Filtering Issue related to custom objects
We've established a custom data structure involving two distinct custom objects: "Application" and "Owner". The "Application" custom object is associated with the standard "Lead/Person" object in a one-to-many manner, indicating that a single lead can have multiple applications.
Similarly, the intention was for the "Owner" object to connect to the "Application" object in a one-to-many manner, signifying that a single application can have multiple owners. However, due to limitations in Marketo, which does not support a second-level custom object relationship (such as Lead <- Parent <- Child), we've linked the "Owner" custom object to the "Person" object.
To simulate the "Applcation <- Owner" connection, we've introduced an "applicationID" field in "Owner" custom object to correlate owners with corresponding applications.
Nonetheless, a challenge arises with our current approach when attempting to filter leads based on specific criteria. For instance, we want to filter leads who have applications with a "completed" status (application.status = "Completed"), and the corresponding application owners should have a score greater than 500 (owner.score > 500). We created a filter in this manner =>

However, this approach yields leads with any application that has a "Completed" status and any owner with a score over 500, regardless of whether the owner's application status is "Completed".
Given this situation, the question arises: Is there a feasible method to achieve this type of filtering? Alternatively, should we consider abandoning the use of using custom objects altogether and consolidate all the data within the standard lead object? It's important to note that we're not inclined toward the latter approach as it would lead to a lot of data duplicacy.
Any insights or suggestions regarding this matter would be greatly appreciated.