Supressing "Undefined variable: variables in module_block_view()" without hiding the notice
The problem is with $block['content'] = theme('myblock1', $variables); and $block['content'] = theme('myblock2', $variables);: mymodule_block_view() doesn't define any $variables variable; just define it or use an array directly.

Since in mymodule_theme() you don't define any variable for your theme functions, just replace your mymodule_block_view() with the following one.

function mymodule_block_view($delta = '') {
  $block = array();

  switch ($delta) {
    case 'myblock1':
      $block['content'] = theme('myblock1', array());
      break;

    case 'myblock2':
      $block['content'] = theme('myblock2', array());
      break;
  }

  return $block;
}


To make the question more complete: Drupal doesn't define any global $variables nor do hook_block_view() implementations receive any $variables as parameter. Therefore, $variables could just be a local variables for your function. That is why you are getting that error: You are using a variable without to first declare it.  

Notice that if $variables were a global variable, you should still declare it as global $variables in your function, or use it as $GLOBALS['variables']. (Don't try it since it doesn't work because doesn't define any global variable with that name.)