You are in luck. See https://docs.mongodb.com/manual/reference/operator/aggregation/arrayToObject/ you might need to do some $project or $map first.
Be aware that some client drivers do not like numbers as field keys and might build a sparse array anyway. See Mongodb import object with numbers as keys results in array
Personally, I would keep it as an array as I find it is cleaner and more representative of what the data is. You could pass skus[n] to a function and you would have everything about the sku. Otherwise you wound need to pass the key (ie: 37) and the object to have all the info about the sku because sku.37 does not have the key. It would make further $match harder to do because 37 is really data not a key.