Has probado a usar un conversor de niveles lógicos? Poniendo los pull-ups directos a las salidas del arduino, a continuación el dispositivo de 5v seguido del conversor y finalmente el dispositivo de 3.3v . Teóricamente debería ir siempre y cuando cada dispositivo tenga una dirección i2c distinta.