If you are running NPM v12.3, then most if not all of the data variables you list are already available if you select Custom Table as the content type, and then select "UPS" as the category you want to report on. If any of the variables you need are not in the list, you could still get them by creating custom Mode pollers using the Universal Device poller tool and then creating the report based on that data. Grouping by the custom properties is easy. Just make sure each UPS has the proper value assigned, and then Group By the property on the Edit Resource page. As for the "less than 10 minutes runtime" requirement, you would need to add that as a condition on the initial Add Content page.
Does this help?