Are there distinct fields or types of problems which have contributions that are realistic to achieve for an undergraduate?
Yes, ask your professor to give you a problem that you may solve as an undergraduate. You can also look for publications that say that the problems are appropriate for undergraduates.
I think that a research project that you could do that would be interesting would be to create a language that would compile to the EVM (I suggest scratch https://scratch.mit.edu/).
Another would be to explore user interface design for voice systems like making an Alexa App or one that you create yourself to solve some problem that you face.
A good example can be found at http://www.ics.uci.edu/~theory/269/020125.pdf