Deceiver (1998)

A hooker is found cut in two. Two cops give polygraph tests to the only suspect, James Wayland (Tim Roth), an unstable genius. After some time, the roles change.