Melt butter in a deep 12-inch heavy skillet over moderately low heat. Add onion and cook, stirring occasionally, until it begins to soften, about 5 minutes. Stir in vodka, bring to a simmer, and simmer for 4 minutes. Add tomato puree and cream and simmer, stirring occasionally, until onion is soft, about 5 minutes. Stir in ham, Tabasco, salt, and pepper. Keep sauce warm over very low heat.
Cook pasta in 6- to 8-quart pot of boiling salted water (1 tablespoon salt per every 4 quarts water) until al dente. Reserve 1/2 cup cooking water and drain pasta.
Add pasta to sauce and toss with sauce and cheese, adding some of reserved cooking water if pasta seems dry.