Always On AG cluster with 2 servers that fail over to each other
Yes, this is absolutely possible, and a great use of resources. 

You would get your OLTP databases added to an Availability Group, and then add the second machine as your secondary replica. For both replicas be sure to allow reads from secondary.

Then do the same with your DW databases.

You will end up with two AGs, and will probably want to run with each as the primary on different servers, so be sure that you include monitoring to let you know when the AGs failover, and what AG is running as the primary on each server.