A few things wrong.
1) Don't use brackets here. In regex, [abc] matches a or b or c. You want to match the whole pattern, so don't use brackets. (You could use parenthesis, but it it not necessary
"\\ (more info)" # fix 1: no brackets
2) You seem to know backslashes are used to escape things in regex. But they must be next to what they are escaping! Here you are escaping a space, which is meaningless. You need to escape both parentheses that are part of your pattern:
"\\(more info\\)" # fix 2: escape parens
3) You still need the space, but it goes at the front, before the (escaped) parenthesis:
" \\(more info\\)" # fix 3: space at beginning
Now the pattern should work. Also note that gsub returns a character, so your as.character is redundant.
I'd strongly recommend using a site like regex101.com to debug regex. You only need single \ to escape there, but other than that it is just like R. Here's your example. Check out the sidebar for nice explanations.
gsub( " \\(more info\\)", "", States$Regions)-> States$Regionsworking fine