I read in the wikipedia article that generating nodes have no obligation to include transactions when they create a block.
However in the bitcoin wiki/blocks section it says 'Bitcoin transactions are broadcast to the network by the sender, and all peers generating coins collect them and add them to the block they're working on'
add them if they want to, and currently they generally do. But they don't have to.
I also read that the totality of transactions are hashed (with individual transactions NOT being hashed). (I assume this means ALL transaction since genesis, rather than in an individual block?).
Every transaction has a hash which identifies it. In addition, all the transactions in an individual block
are structured as a Merkle tree, and its root hash is included in the block header as the "Merkle root".
So when you say nodes have no obligation to include transactions, does it mean that they can just use the last transaction hash and work from there?
They don't use any "last transaction hash". They just build a block where the only transaction is reward generation, with a Merkle root to match. here
is a recent example of a block where the only transaction is generation.