This can be done in quite a few ways, I believe. So if I understand you correctly, you would like to be able to have different templates for different content items. Correct me if I am wrong, but in your case you would even like to open the individual items in different pages.
So, I will start by saying that your initial approach makes perfect sense, meaning that if you want to have different detail page per item, it makes sense to store that in the content item level with a custom field. The same goes if you'd like to render each details page with different MVC View, meaning different mark-up template for each detail item's view.
In both cases you can apply a custom logic in the controller to return different ActionResult based on the properties of the items. You can also get those values from the designer, but the main point is that you can use it to return different views or event to redirect to different pages. Here is a dummy example to help me visualize the suggested approach:
Please also take a look at this documentation for the basic example, that you can use as a starting point (link here
Please review and let me know if that helps and if you need additional clarifications or assistance.
Do you want to have your say in the Sitefinity development roadmap? Do you want to know when a feature you requested is added or when a bug fixed? Explore the Telerik Public Issue Tracking
system and vote to affect the priority of the items