Heat 1 tablespoon of the butter in a large saucepan over medium-high heat until melted and hot.
Add the ground beef and cook about 3 minutes, allowing it to begin browning.
Push the beef to one side of the pan and place the cut side of the halved onion on the pan; continue cooking the beef and onion 3–4 more minutes until the beef is nicely browned and the onion is fragrant.
Turn off the heat, tilt the pan, and spoon out and discard excess fat, leaving the browned beef and onion in the pan.
Return the pan to medium-high, add the remaining 3 tablespoons butter, then add the can of tomatoes and the Italian herb spice mix.
If using whole tomatoes, mash and break them up in the pan, bring to a simmer, then reduce the heat to low and cook uncovered for 45 minutes, stirring occasionally.
Season the sauce with salt to taste and remove the onion half if desired.
While the sauce simmers, cook the hearts of palm linguini according to the package instructions; drain and divide among bowls.
Spoon the tomato and beef sauce over the linguini, sprinkle with grated Parmesan, and finish with your choice of fresh herbs.