Is there a way to block CURL to fetch data on my site?
curl user agents can be changed at any time. The reason curl exists is that you can change pretty much everything on your query.
You can block them, but once they change the use agent, they will have access again.
I recommend you block the IP address instead or the whole subnet just to be sure.
Example:
deny from aa.bb.cc.dd ff.gg.hh.0/24