Database
[{objA:{a:1,b:2},objB:{a:1,b:2}},{objA:{m:"g",c:5},objB:{c:5,m:"g"}},{objA:{m:"g",c:7},objB:{c:5,m:"g"}},{objA:{m:"g",c:7},objB:{b:"g",c:7}}]
Query
db.collection.aggregate([{$addFields:{"sortedA":{$sortArray:{input:{"$objectToArray":"$objA"},sortBy:{k:1}}},"sortedB":{$sortArray:{input:{"$objectToArray":"$objB"},sortBy:{k:1}}}}},{"$match":{$expr:{$eq:["$sortedA","$sortedB"]}}},{"$unset":["sortedA","sortedB"]}])