Yes it is possible.
However not without drawbacks and paradigm shifts.
1) you can leave code, database entries and game content server side and only download / access during runtime one level at a time or as needed.
This obviously will have possibly long loading times and will be very bad for game experience.
You should only keep "spoiler content" server side.
This will leave your game (client - server) communication prone to the usual hacks.
2) a better approach is actual cloud gaming.
ALL game content is stored on servers, even code execution (including graphics engine) is NOT client side.
You'll actually only stream the display content to the client like you would a movie from Netflix, Amazon and the likes while the client returns user input to the server.
This is currently in heavy development.
Nvidia being just one example:
This seems to be one offering something like that, I just did a quick search, so it may not be what you need.
Amazon and google also offer cloud services and game servers as far as I know.
Your clients need access to a very(!) low latency internet connection but depending on resolution and compression app.10-20Mbps bandwidth should suffice for HD/4k.
Since all game logic is server side, there is no communication to intercept or code residing in local memory, thus making cheating and hacking the game itself really difficult if not impossible.
Incidentally this also should make piracy very difficult and will most likely shift it towards access hacks and internal leaks instead.
Brave new gaming worlds...