How do I force the netrender to render everything on GPU?
Network Render plugin does not have this functionality.
Render the scene remotely via the command line. You can run your own script with it to set proper rendering device or render tile-size.
blender -b file.blend -E CYCLES -t 0 -o //file -P script.py

In the script.py:
import bpy

bpy.context.user_preferences.addons['cycles'].preferences.compute_device_type = 'CUDA'
bpy.context.user_preferences.addons['cycles'].preferences.devices[0].use= True

bpy.context.scene.cycles.device = 'GPU'

bpy.context.scene.render.tile_x = 256
bpy.context.scene.render.tile_y = 256

bpy.ops.render.render(write_still=True)

Blender 2.8+
There's an API change for Blender versions 2.8+, it's only bpy.context.preferences (not user_preferences anymore)