Is a custom module the best way to build out a Form with full custom AJAX?
Building custom module for mentioned requirements would make your work easy and dynamic. Dynamic in sense you can add more links if you publish any new page in future. 
It would be great if you use ctools-modal with custom module. I was facing the same problem. I had wasted a week for finding better way to get link with ajax form.