Reset nodes to their default values
UPDATE


  Good news! "node reset" functionality is now part of node wrangler and will "land" after the release of 2.78, means hopefully in 2.78a: https://developer.blender.org/D2129 If you are interested, download a preview here:
  
  Even it's now possible resetting multiple nodes. You can simply select the nodes you like to reset and hit backspace, which makes sense (thanks to Greg Zaal) since this is also the shortcut to reset a single node parameter. 


Original text:

I almost hesitate to suggest this as an answer, as it seems like there should be a built-in way to do this for the standard Node Trees. But in the interest of experimentation here's an operator that resets the node by:


copying location / size / name / bl_idname of the active node
copying the links  
deleting the original node  
replacing it with a fresh one of the same type
reconnecting all links


code (rather inelegant, but seems to work for Node Groups too):

def store_replace(node):
    node_tree = node.id_data
    props_to_copy = 'bl_idname name location height width'.split(' ')

    reconnections = []
    mappings = itertools.chain.from_iterable([node.inputs, node.outputs])
    for i in (i for i in mappings if i.is_linked):
        for L in i.links:
            reconnections.append([L.from_socket.path_from_id(), L.to_socket.path_from_id()])

    props = {j: getattr(node, j) for j in props_to_copy}

    new_node = node_tree.nodes.new(props['bl_idname'])
    props_to_copy.pop(0)

    for prop in props_to_copy:
        setattr(new_node, prop, props[prop])

    nodes = node_tree.nodes
    nodes.remove(node)
    new_node.name = props['name']

    for str_from, str_to in reconnections:
        node_tree.links.new(eval(str_from), eval(str_to))


Add-on

https://gist.github.com/zeffii/010a108a612fd6071a4b

via search menu (Spacebar)



via node properties (N)