I’m an American citizen, with no other citizenships or residences or anything.
I traveled to Cuba in the mid-90s (and, for those who are going to get all picky about board rules, this was decades ago, and I’m not looking for advice on how to do anything illegal in the present or future).
My understanding is that, while it’s not illegal to travel to Cuba in and of itself, it is illegal to spend any money at all there (i.e., to engage in a transaction).
We went to Montreal first, and purchased tickets there for the flight to Cuba (and for the return flight, of course). We made our hotel reservations (in Varadero and in Havana) through a Canadian travel agency. The Canadians were more than happy to oblige. For them, going to Cuba is just a nice winter break. And we got a bunch of dollars to take with us, since we were aware that we wouldn’t be able to use our credit cards.
I don’t believe that the “CUC,” whatever that is, existed at the time. The only currency one could use in Cuba was the US dollar. In fact, I noticed that a popular tourist scam was for some enterprising Cuban to generously offer to exchange some hapless tourist’s dollars for Cuban pesos, which were (are?) absolutely useless. Nobody would take them.
Traveling around the country required a bit of hustle. The best way (sometimes the only way) to get from one town to another was to make unofficial deals with Cuban tour guides. For a few US dollars, you could ride their buses. Very handy, and much better than the buses Cubans had to use, which were unreliable and could involve hours of waiting around for the bus to show up.
Someone noted upthread that the Cuban authorities are aware of the situation for American travelers, and are cooperative, and won’t put a stamp in your passport. This was my experience. They stamped a card that was inserted into my passport. One the return trip, once we landed in Montreal, I threw it out.
Obviously I’m not encouraging you to do anything illegal. That said, I had a fantastic trip, and everyone I know who’s been to Cuba had a great time.