@John Ang
If you're not running a local nameserver, then having your registrar set up (ns1.example.com, ns2.example.com) is probably not what you want to do since technically speaking they don't actually exist. Instead I would suggest just using the registrar nameservers in your WHM. Once you have verified everything is working, then you can search for the proper zone configuration to create custom nameserver names like ns1.example.com, ns2.example.com that loop back to the registrars nameservers.
Just to provide some clarification since reading your posts it looks like maybe you don't fully get the difference between hosting DNS locally vs using your registrar's nameservers.
If you choose local DNS, you would setup a nameserver like BIND in the WHM->Nameserver Selection. You would then create a zone record for your host domain and your local nameservers (ns1.example.com, ns2.example.com) that point to your own server in WHM. At your registrar, you would remove any zone entries you created for all the domains you're hosting on your WHM server. Then in the settings for each of those domains, at the registrar, you set the nameserver to custom and enter your WHM nameserver addresses (ns1.example.com, ns2.example.com). What this does is tell the registrar and your server to tell anyone who asks for a domain hosted on your server that they can find the proper server IP address by checking your WHM nameserver, since your WHM nameservers hold all the domain zone records.
The benefit of this is that you're able to manage all the DNS records for the domains you host directly in WHM or cPanel, and WHM will create the proper zone records automatically when you provision accounts. The only thing you or your customers need to do at the registrar is set the nameservers to custom, and point them to (ns1.example.com, ns2.example.com). The downside is that now you're responsible for maintaining the local nameserver, like BIND, and ensuring it's running and secure. Because if it isn't working, then no one will be able to find things like mail and websites on your server. This is why a DNS cluster or a master/slave setup are recommended for redundancy. The other draw back is that a local nameserver wil consume some resources on your server fielding DNS queries from the entire internet. This might be a problem if you're tight on resources like memory on a small VPS.
If you chose not to run a local DNS like BIND, then instead of using (ns1.example.com, ns2.example.com) you will now be using the nameserver addresses provided by your registrar. Since your registrar is now hosting the nameservers, you have to manage all domain zones at the registrar, effectively disabling any domain zone record management functions through WHM. When you setup new accounts on your server, you'll provide the registrar nameservers and WHM will create a local zone entry using those registrar nameserver addresses. What this does is tell the registrar and your server to tell anyone who asks for a domain hosted on your server that they can find the proper server IP address by checking with the registrar's nameservers, since the registrar nameservers hold all the domain zone records.
The benefit of this is typically registrar nameservers are much more robust in terms of availability. Plus you're offloading the work and freeing up the resources that would be needed to run a local nameserver like BIND on your WHM server. The downside is that since the nameserver is at your registrar, you're not able to manage any zone records through WHM or cpanel aside from changing the nameserver addresses. This means you and your customers can't manage their domain zone records through WHM or cPanel. Instead, all zone management for each domain will have to be done manually by logging into the registrar and creating entries using the registrar control panel. In my opinion, tt's a lot more work and less of a seamless experience doing it this way.
I run powerDNS locally on my server with NS1 (a third party DNS provider) as a slave DNS provider for redundancy because I like the convenience of managing everything in one place locally. The nice thing is that even with a local DNS, if you or your customers prefer to manage DNS zones at the registrar, you still can by just setting the local zone entry to point to the registrar nameservers.
Side note, I'd like to know which registrar you're using that sets up these records for you. I didn't think there were managed registrars.