Поэтому вопрос мой такой - возможно ли каким-то образом запатентовать идею использованную в моем ПО с тем чтобы использование этой или подобной с т.з. технической реализации идеи было возможно только через заключение со мной какого-то спец. договора.
Нет. Идеи не патентуются.
Предлагаю вам рассмотреть две альтернативные возможности, которые используют в случае, подобном вашему.
1) Написать хорошую программу, постоянно её совершенствовать, выпустить версии для разных ОС, предлагать API сторонним разработчикам, обучать. В общем, делать так, чтобы было выгоднее купить лицензию на вашу программу, чем писать её аналог самому.
2) Привязать программу к сервису (серверной части), который будет работать под вашим контролем. Главную идею "запрятать" в этот сервис и охранять в режиме коммерческой тайны (ноу-хау).