Why are you complicating this so much?
You can do this for player movement - replace these lines in Game_Player script:
case Input.dir4
when 2
move_down
when 4
move_left
when 6
move_right
when 8
move_up
end
With this:
if Input.press?(Input::Y)
move_down
elsif Input.press?(Input::X)
move_left
elsif Input.press?(Input::Z)
move_right
elsif Input.press?(Input::R)
move_up
end
You can do almost the same for any scene if you just edit it in the window_selectable class.
Replace Input::R with Input::A (This will take care of actor switching in the menu)
Input::UP with Input::R
Input::DOWN with Input::Y
Input::LEFT with Input::X
Input::RIGHT with Input::Z