EDIT : The below ONLY applies to SAS 9.3 and prior. See Joe's selected answer above for how to do this in v9.4 onwards.
Yes it is possible to embed SVG into a .html file, but no this can't be done in a single step using ODS. ODS is always going to produce the SVG (or image) into a separate file then the .html it produces, and you will need to frankenstein them together yourself.
This article about using SVGs is lengthy but good:
http://css-tricks.com/using-svg/
And this question is also pretty useful:
Do I use <img>, <object>, or <embed> for SVG files?
Here's a duct-tape example (thanks to Joe whose code I slightly modified):
ods listing close;
options device=svg;
ods graphics / outputfmt=svg;
ods html path="%sysfunc(pathname(work))" file="whatever.html";
proc sgplot data=sashelp.class;
scatter x=height y=weight;
ellipse x=height y=weight;
run;
ods html close;
ods listing;
The below creates a new HTML file called embedded.html
which contains a very bare-bones .html file. It simply takes the contents of the SVG file and drops it in the middle of the file.
Because SVG is really just XML modern browsers should run this fine (but see the links above for how to get this working in older browsers).
data _null_;
file "%sysfunc(pathname(work))\embedded.html";
infile "%sysfunc(pathname(work))\SGPlot1.svg" end=eof;
if _n_ eq 1 then do;
put "<html><body>";
end;
input;
put _infile_;
if eof then do;
put "</body></html>";
end;
run;
You mention in your comments also that you may want to do the same for other types of docs as well such as PDF/RTF. If so it may be worth posting a new question because you will have to encode things in base64 to achieve that and it's not a trivial exercise.