I’ve learned the difference between しか~ない and だけ. But I’m still struggling to understand the difference between ばかり and だけ. (Feel free to explain しか~ない if you want to)
ばかり has a nuance of being a lot, or too much. Depending on when it is used the speaker may be trying to express there negative feelings or disapproval for something or a situation. だけ generally only refers to a limit. There is this, and nothing else.
The above sentences both translate to "recently I am eating only carrots". But, the first sentence suggests that the speaker would like to be eating something else. The second sentence sounds more like it is a choice and for some reasons they are deciding to eat nothing but carrots.
Also, the first sentence may also be a dramatic way to say that someone is eating too many carrots but may actually also be eating other things.