It is definitely possible to run a server on dynamic IP - You'll need a dynamic dns service for that. Most domain registrars provide such a service, whether it's paid or free or included in the price of Your domain will vary from provider to another.
The cons include the fact that You depend on that service to be able to discover Your server, and because of that there might be a bit of latency penalty incurred - this may or may not be an issue depending on the server use cases, but for hardcore gaming any latency is unwanted evil. Not sure what Minecraft requires so won't comment on that.
Depending on how Your home network is configured and protected, the risks of exposing something inside it will vary, but there's no denying that there are dangers. My home router has a flavor of Suricata built in, and whenever I open port 80 for the outside world, I can see at least a handful of spam or malware attempts logged by it every day.