If I comment by visiting the blog on an Incognito window, will the blog owner have access to my IP address and location?
Yes. Incognito mode just stops your browser from keeping history.
If yes, is there a way to guard my IP and location from being visible to the blog owner?
You can use a VPN or anonymyzing proxy.
I don't think that there is a way through what you have on Blogger if you have been allowing anonymous comments.
It would be possible for Google to track the IP; but even if they were inclined to react to an abuse report, they would not pass on that information to you.
There are indirect ways you could narrow things down if circumstances are right and if you want to spend a lot of time doing a lot of work for uncertain results. Let's call your anonymous comments, T (for Troll). If you can find other things around the net that T has posted (using the same phrases, style, etc) then you may be able to work from those. For example, if T is posting under some pseudonym on a forum that uses Gravatar (even if T doesn't), then you may be able to get an MD5 hash of the email address T used to sign up for that forum. This sort of de-anonymizing is described here.
Or maybe T boasts about trolling you in some other place. Or something like that.
But these sorts of methods involve a lot of uncertainty. And if T is even half way experienced at this kind of thing, then then the IP is going to be through some proxy anyway, and any email address you find will be a throw away email.
It may be presumptuous of me to advise when I don't know the situation, but my inclination is to suggest that you just let it go. Don't let T's actions control your mind. Don't try to seek revenge. Just disable anonymous comments and let things go.
In order to do what you are asking, there first needs to exist an anonymous user.
Assuming this user exists, there are just a few steps:
1) modify the comment form to include the anonymous check box.
2) detect whether the box is checked.
3) if the box is checked, use the comment_save_pre filter to change the user's info to that of the anonymous user.
Hope that points you in the right direction!
EDIT: Be sure that you have the comments settings in your dashboard only allowing loggedin users to comment.