Нет, проще сделать нельзя, но переработать код, чтобы он стал более гибким и красивым - это нужно обязательно.
Я бы сделал фабрику конвертеров, и в зависимости от типа бы создавался бы нужный конвертер.
В любом случае для каждого нового типа стратегию придется описывать, от этого никуда не денешься. Просто выбор стратегии точно не должен быть в методе Read.
Еще есть такая штука для полиморфной обработки, я вот вспомнил:
https://www.newtonsoft.com/json/help/html/Serializ...
Может это тоже поможет, просто не совсем полностью задача сформулирована.