Hi mariuszp. Congratulations on getting this far!
I've ported a lot of software to my OS, including a fully functional gcc and binutils toolchain. I've written, or contributed to, a bunch of wiki articles on this matter that should be relevant.
http://wiki.osdev.org/OS_Specific_Toolchain - This was already linked and I gather you already have one, might as well check you are up to date with recent changes.
http://wiki.osdev.org/Hosted_GCC_Cross-Compiler - You say you already have a libc, so it sounds like you're already setting up your cross-compiler in this matter, but you probably want to doublecheck.
http://wiki.osdev.org/Cross-Porting_Software - This is the important tutorial I want to make sure you've seen. It documents how to reliably cross-compile third party software the *right* way. From your original post, I get the impression you're doing this entirely wrong. You are meant to set --prefix to the location on your OS where it will be installed, it has nothing to do with your local build machine. After building, set DESTDIR in the make install step to add a second prefix for the purpose of installation. This is useful for package management, but also for cross-compilation where you want to install into your system root.
I don't think you know exactly what a exec-prefix is. A package installs often both machine independent files (man pages, images, documentation, headers, ...) and machine dependent files (programs, libraries, ...). You might want to install those in different places, such as on systems where multiple architectures can co-exist peacefully. Then you can --prefix=/usr -exec-prefix=/usr/x88_64 and get /usr/include/foo.h and /usr/x86_64/lib/libfoo.a.
I'm not entirely sure if you use sysroots and whether you understand their use. They're crucial for proper cross-compilation and you should use them.
If you are a bit curious how sysroots and such should be used:
http://wiki.osdev.org/Meaty_Skeleton - This is my template operating system and uses a sysroot.
As for your original question, to cross-compile a native compiler (binutils, gcc) for your OS, you follow the instructions in Cross-Porting Software. However, you want to use a sysroot while building binutils and gcc, but you don't want the packages to remember that sysroot after installation. Use --with-build-sysroot=/home/you/youros/sysroot and --with-sysroot=/. That effectively disables the system root after installation. I don't think I've yet written a wiki article on a native gcc, but it's basically to combine OS Specific Toolchain with Cross-Porting Software and this paragraph.
I hope that helped, let me know if you have further question.