Действительно, во время компиляции директива import
заставляет препроцессор выполнять ту же операцию, что и вы.
Хотя их можно склеить, общий дизайн таков, что файлы .h определяют внешне видимый дизайн класса, а .m скрывает детали реализации. Вы можете распространять скомпилированный код и, например, .h, а другие разработчики могут использовать класс.
Держите их отдельно, это будет меньше причинять боль, и в долгосрочной перспективе вы почувствуете разницу.