2 added 94 characters in body

This is all just off the cuff, so it might not work at all, and even if it it does, it's probably too complicated.

I think Owen Biesel is right to say that the answer is no as stated, so I think condition 2 ought to be dropped. Assuming that a multiset can only have finitely many copies of each element (as your desire for integer truth values seems to suggest) I think you could have the objects be sets of pairs (x,n) where x is a set and n is a nonnegative integer (so kind of like the elements of a tagged disjoint union) with the property that, if (x,n) is in the set, then so is (x,m) for any m≤n, and for which only finitely many "copies" of the same element appear. A morphism $f:S\to T$ is an equivalence class of set functions with the following property: take $x\in S$, and consider the sequence of elements $f(x,0),f(x,1),\ldots$. This sequence should have the property that, for each $y\in Y$, the appearances of y in the sequence occur in nondecreasing order with no gaps. Two functions are the same if they differ by permuting the indices in the domain.

For example, if this definition does what I hope it does, there are two functions from {x,x} to itself, namely the identity and the one which sends (x,0) and (x,1) to (x,0). I think this at least solves the isomorphism problem; I'm pretty sure that the only isomorphic multisets will be the ones that "ought" to be isomorphic.

I don't think this makes the subobject classifier behave like you'd want, but I'm not sure you'd actually want it to. The integers seem like a bad candidate, because there's nothing "special" about the element 79 as opposed to the element 3; the "truth" map can only pick out one element. I think the way to make it work might be to drop the finiteness assumption and use {0,1,1,...} as the classifier.

EDIT: I'm pretty sure this actually doesn't work; see the comments to the question.

1

This is all just off the cuff, so it might not work at all, and even if it it does, it's probably too complicated.

I think Owen Biesel is right to say that the answer is no as stated, so I think condition 2 ought to be dropped. Assuming that a multiset can only have finitely many copies of each element (as your desire for integer truth values seems to suggest) I think you could have the objects be sets of pairs (x,n) where x is a set and n is a nonnegative integer (so kind of like the elements of a tagged disjoint union) with the property that, if (x,n) is in the set, then so is (x,m) for any m≤n, and for which only finitely many "copies" of the same element appear. A morphism $f:S\to T$ is an equivalence class of set functions with the following property: take $x\in S$, and consider the sequence of elements $f(x,0),f(x,1),\ldots$. This sequence should have the property that, for each $y\in Y$, the appearances of y in the sequence occur in nondecreasing order with no gaps. Two functions are the same if they differ by permuting the indices in the domain.

For example, if this definition does what I hope it does, there are two functions from {x,x} to itself, namely the identity and the one which sends (x,0) and (x,1) to (x,0). I think this at least solves the isomorphism problem; I'm pretty sure that the only isomorphic multisets will be the ones that "ought" to be isomorphic.

I don't think this makes the subobject classifier behave like you'd want, but I'm not sure you'd actually want it to. The integers seem like a bad candidate, because there's nothing "special" about the element 79 as opposed to the element 3; the "truth" map can only pick out one element. I think the way to make it work might be to drop the finiteness assumption and use {0,1,1,...} as the classifier.