I've understood that you don't use DiSEqC in your system, but (as you also say) somehow you need to tell the VDR that Hotbird is connected to your TV card #1 and Nilesat to TV card #2. Otherwise you cannot be sure that it uses the right card, which may be the reason why it seems the 2nd card is not working. My interpretation of the VDR-Wiki page is that your scenario is covered via the diseqc.conf file even though you don't use DiSEqC for real. You can give it a try.
The other idea I would have, is to use the CAID field in the channels.conf to bind every channel to the right device.