text: Title: 'Set Library Search Order' not working when same keyword is used in both a Robot resources and a Python library
  Body: Hello, 
  
  I'm using RF 6.1
  Here my test:
  
  TATA.py
  ```
  from robot.api.deco import keyword
  
  class TATA:
      @keyword("Test")
      def Test(self):
          logger.info(f'Tata')
  ```
  TOTO.robot
  ```
  *** Settings ***
  Documentation  Resource for manipulating the VirtualBox VM
  Library  BuiltIn
  
  *** Keywords ***
  Test
      [Documentation]    Open SSH connection To Distant Host (not applicable for VBOX)
      Log  Toto  console=True
  
  ```
  
  bac_a_sable.robot:
  ```
  
  *** Settings ***
  Library         ${PROJECT}/libs/TATA.py
  Resource        ${PROJECT}/resources/TOTO.robot
  
  *** Test Cases ***
  Mytest
      Set Library Search Order  TOTO  TATA  
      Test
      Set Library Search Order  TATA  TOTO  
      Test
  
  ```
  
  ![image](https://github.com/robotframework/robotframework/assets/97884384/6d0bbc57-cb07-47d0-82b8-ec33197f8270)
  
  Current result : a "Log Toto" in both case
  Expected result: a "Log Toto" in first Test keyword call and a "Tata" logged in the second
  
  This issue seems to be located robotframework/src/robot/running/namespace.py line 173-175:
  
  ```
      def _get_implicit_runner(self, name):
          return (self._get_runner_from_resource_files(name) or
                  self._get_runner_from_libraries(name))
  ```
  