Table design for changing forms
I'm with you: better to have a more flexible system than having to change your table structure every year. 8M rows is not excessive, just make sure you index it properly based on how you search/retrieve the information, and you'll be fine.

There's another way to go that would probably fit your use case better: document store databases. Switch to MongoDB or RethinkDB and flexibility issues disappear.