The first function.json content that you used should work for you. I have created function from the Azure portal and have also tested locally and didn't observe any issue. When there is any blob uploaded to any of the subfolders the function app is getting triggered. You can refer to blob trigger input binding document.
If you are created function from the Azure portal make sure that you have defined the connection parameter.
In the below logs you can see it works when there is a file uploaded in subdirectories.
If you are still facing the issue please let me know so I can connect with you offline and assist you further.
Please 'Accept as answer' and ‘Upvote’ if it helped so that it can help others in the community looking for help on similar topics.