I noticed hundreds of 404 error in my google webmaster portal and upon further investigation, it seems that Google is indexing based on display name rather than username.
Many are /community/subscriptions/ or /community/activity/ urls.
Is this a bug? Can I simply exclude indexing of subscription and activity URL's? I don't want those to be indexed anyway.
It seems you've disabled Guest Access to Users Activity and Subscription pages and Google see 404 error, because Google is a guest (not registered user). I recommend disable user profile indexing in Dashboard > Forums > Settings > Features admin page.
I think these are old indexed data, nothing is being indexed anymore. They were indexed before and Google checks them now and don't find because you've disabled access to that page. So just ignore these errors, they'll be eliminated from google in future.